해당 ID를 찾을 때 부울 값 isHere true (1) 을 설정해야하는 프로젝트에서 작업하고 있습니다. 그러나 데이터베이스를 업데이트 할 수 없습니다. 나는 데이터베이스에서 선택할 수 있습니다.PHP & MySql : 데이터베이스를 업데이트 할 수 없습니다.
두 가지 문제점이 있습니다. 첫째 :
경고 :
$handle = @fopen("../smartriders.txt", "r"); if ($handle) { while (($smartRider = fgets($handle, 255)) !== false) { if($update = $conn->query("UPDATE members SET isHere = 1 WHERE SmartRiderID = ?", $smartRider)) { print("update successful"); } } if (!feof($handle)) { echo "Error: unexpected fgets() fail\n"; } fclose($handle); }
이 경고 산출 줄에 index.ph에 주어진 mysqli :: 쿼리() 매개 변수이 정수로 기대하고, 문자열을 14
라인 14 :
if($update = $conn->query("UPDATE members SET isHere = 1 WHERE SmartRiderID = ?", $smartRider))
두 번째 문제 : 하더라도 내가 수동으로 타이 데이터베이스에있는 smartRider, 아무것도 업데이트되지 않습니다.
도움이 될만한 의견이 있습니다.
'expects integer'. 그게 무슨 뜻인지 알아? –
mysqli_query 매뉴얼을 참조하십시오. 값을'query()'에 전달한다고해서 쿼리에 추가되는 것은 아닙니다. –
예, 이해합니다. SmartRiderID가 VarChar이기 때문에 이해가 안되는 이유입니다. – Marcel