$result = mysql_query("SELECT max(Cardex_ID) FROM cardex WHERE Onderdeel_ID=$Onderdeel_ID"); if (!$result) { die('Could not query:' . mysql_error()); }
$Cardex_ID = mysql_result($result, 0, 'Cardex_ID');
echo $Cardex_ID;
mysql_query("UPDATE cardex SET PADate=$PAdate, PAhours=$PAhours, PAcycles=$PAcycles, PAlanding=$PAlanding WHERE Cardex_ID=$Cardex_ID");
最佳答案
我建议您使用 PDO连接到您的数据库而不是使用通用连接。
此外,如果 $Onderdeel_ID 是一个数字,则您不需要 ""
$db = new PDO ('mysql:host=localhost;dbname=DB_NAME','DB_USER','DB_PASS');
$sql = 'SELECT max(Cardex_ID) FROM cardex WHERE Onderdeel_ID='. $Onderdeel_ID;
$result = $db->query($sql)->fetch(PDO::FETCH_ASSOC);
echo 'SELECT';
if (!$result) {
echo 'RESULT';
}
注意:使用语句 prepare
来防止 SQL 注入(inject)也是有效且首选的:
$db = new PDO ('mysql:host=localhost;dbname=DB_NAME','DB_USER','DB_PASS');
$db->prepare ( 'SELECT max(Cardex_ID) FROM cardex WHERE Onderdeel_ID=:Onderdeel_ID');
$result = $db->execute( array( ':Onderdeel_ID' => $Onderdeel_ID ) );
此外,如果您仍然遇到问题,请检查您的 $Onderdeel_ID
是否已通过。一个简单的 var_dump($Onderdeel_ID);
就可以了
关于MYSQL SELECT max(ID) WHERE Onderdeel_ID=$Onderdeel_ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13680580/