私はこのコードを持っており、変数 "p1"はintです。デバッガは、適切に値を取得することを示します。しかし、私は "クエリが失敗しました"を取得します。データベースの値はintに設定されています。どんな助け?すべてのPHP、クエリが失敗しました
<?php
session_start();
include 'connect_db.php';
$con = $_SESSION['connection'];
$query = "SELECT * FROM class WHERE id_class ='".$_GET['p1']."'";
[email protected]_query($con,$query) or die('Error, query1 failed');
$num_result=mysqli_num_rows($result);
if($num_result>0){
$insert_query= " INSERT INTO user_program SET
id_class='".$_POST['id_class']."'
WHERE id_user='".$_SESSION['id_user']."'";
$insert=mysqli_query($con,$insert_query) or die('Error,query2 failed');
if ($insert) {
echo '<html><meta charset="UTF-8"><script language="javascript">alert("ok!"); document.location="add_classes_form.php";</script></html>';
}
else {
echo '<html><meta charset="UTF-8"><script language="javascript">alert("not ok.")</script></html>';
echo '<script language="javascript"> document.location="add_classes_form.php";</script>';
exit();
}
}
?>
変更'するmysql_query($詐欺、$のinsert_query) '' 'mysql'と' mysqliのを混在させないでくださいの
使用'syntax – Mario
そして、ここでは、「... mysq_num_rows($ result);」という誤植を修正しました。 –
新しいコードを書いているなら、** _ please_は 'mysql_ *'関数**を使わないでください。彼らは古くて壊れていて、PHP 5.5では廃止されました(セキュリティアップデートをもはや受け取っていなくなっています)、PHP 7では完全に削除されました。['PDO'](https://secure.php.net/manual /en/book.pdo.php)または['mysqli_ *'](https://secure.php.net/manual/en/book.mysqli.php)を_prepared statements_と_parameter binding_で置き換えてください。詳細については、http://stackoverflow.com/q/12859942/354577を参照してください。 – Chris