大家好,我对这个非常简单的代码有一些奇怪的问题:
if($_GET['task'] == 'dropMenu') dropMenus($_GET['id'], $_GET['val']);
function dropMenus($elemId, $elemValue){
global $pdo;
switch($elemId){
case 'bank':
$dbTable = 'bank';
$cellName = 'bankname';
break;
case 'tipe':
$dbTable = 'cardtype';
$cellName = 'type';
break;
case 'holder':
$dbTable = 'cardholder';
$cellName = 'holdername';
break;
}//end switch()
$result = $pdo->query('select * from bank '.$dbTable);
foreach($result as $row){
$dbArray[] = array('id' => $row['id'], 'name' => $row[$cellName]);
}//end foreach
}//end dropMenus
如果$elemId = 'bank'
一切正常,但如果$elemId = 'tipe'
由于某种原因我收到此消息:
消息是注意:未定义索引:在C:\ xampp \ htdocs \ financeStat \ cards \ cardsImprove \ cards.php中输入行($ dbArray [] = array('id'=> $ row ['的行) id'],'name'=> $ row [$ cellName]))
或$elemId = 'holder'
:
注意:未定义的索引:holdername在C:\ xampp \ htdocs \ financeStat \ cards \ cardsImprove \ cards.php中行($ dbArray [] = array('id'=> $ row ['的行) id'],'name'=> $ row [$ cellName]))
有什么想法吗?
答案 0 :(得分:1)
db结果中没有type
或holdername
个字段。那是你的错误所说的。检查数据库结果。
答案 1 :(得分:0)
问题在于$row
不包含字段type
或cardholder
这一事实。我会通过执行以下操作来检查数据库请求的输出:
$result = $pdo->query('select * from'.$dbTable);
这将显示$row
变量的确切含义。