-1
我一直想弄明白這一點,我絕望地卡住了。我在我的MySQL數據庫中有一個名爲type的列。它包含全部1。在下面的函數$row[type]
總是在while循環中返回2,我只是不知道爲什麼。PHP/MySQL錯誤地返回變量
有人能比我更聰明地解釋在什麼情況下可能發生。我知道它在數據庫中是1,但它在這裏出現了2,我確定我錯過了一些基本的東西,但我是新手,只是第一次嘗試編寫自己的函數。此功能中的其他一切都很好,只是不確定我要出錯的地方。
function getQuestionsVendorForm($dbh, $hosp)
{
$sql1 = $dbh->prepare('
SELECT COUNT(*)
FROM sub_questions
WHERE hospital_id = :hosp
');
$sql1->bindValue('hosp', $hosp);
$sql1->execute();
$num_rows = $sql1->fetchcolumn();
$sql = $dbh->prepare('
SELECT *
FROM sub_questions
WHERE hospital_id = :hosp
');
$sql->bindValue('hosp', $hosp);
$sql->execute();
$question_table = '';
if ($num_rows > 0) {
$isOdd = true;
while (($row = $sql->fetch(PDO::FETCH_ASSOC)) !== false) {
if ($isOdd) {
$question_table .= '<div>';
}
if (!$isOdd) {
$question_table .= '<div>';
}
$question_table .= "<label class='dontend'>${row[question]}</label>";
if ($row['type'] = "2") {
$question_table .= "<input type='radio' name='quest_$row[question_id]' value='Yes'>Yes";
$question_table .= "<input type='radio' name='quest_$row[question_id]' value='No'>No";
} else {
$question_table .= "<textarea name='quest_$row[question_id]' rows='1' id=''></textarea>";
}
$question_table .="$row[type]";
$question_table .= '</div>';
$isOdd = !$isOdd;
}
;
} else {
$question_table = '';
$question_table .= '<div>';
$question_table .= 'No additional questions have been added by this hospital.';
$question_table .= '</div>';
}
;
return $question_table;
}
非常感謝!真的,這是一個倒退?我認爲這個網站是用於編碼的幫助?對不起,如果我不是最好的程序員。試圖變得更好。 –
不要冒險downvote。我也會把這個問題投票結束,因爲它太局部化了,不可能在將來幫助其他任何人(我相信在這裏有很多問題都有同樣的問題)。它反映了整個社區對問題有用的問題,而不是問題或代碼的質量。 –