私はこのコードをしばらく見てきましたが、どこに問題があるのかわかりません。 StackOverflow全体を読んでいますが、エラーがどこにあるのかまだわかりません。
<?php
mysqli_connect("localhost","root","","web_table");
mysql_select_db("web_table") or die(mysql_error());
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
echo "<p> Connection Successful!"
mysqli_query('INSERT INTO web_formitem (ID, formID, caption, key, sortorder, type, enabled, mandatory, data) VALUES (105, 7, Tip izdelka (6), producttype_6, 42, 5, 1, 0, 0)');
echo "<p>Insert successfull";
?>
エラーは13行目のどこかにあります、thats mysqli_query('insert...
。 http://www.w3schools.com/php/php_mysql_insert.asp で自分自身を助けようとしましたが、それはあまり役に立ちません。
警告:学習目的でw3schoolsを決して参照しないでください。チュートリアルには多くの間違いがあります。
mysqli_query ドキュメントによると、最初のパラメーターは接続文字列でなければなりません:
$link = mysqli_connect("localhost","root","","web_table");
mysqli_query($link,"INSERT INTO web_formitem (`ID`, `formID`, `caption`, `key`, `sortorder`, `type`, `enabled`, `mandatory`, `data`)
VALUES (105, 7, 'Tip izdelka (6)', 'producttype_6', 42, 5, 1, 0, 0)")
or die(mysqli_error($link));
注:一部の列名は予約語であるため、挿入クエリの列名にバッククォート `を追加します。
Mysqli_query(最初のパラメーターは接続、SQLステートメントでなければなりません)で
$connetion_name=mysqli_connect("localhost","root","","web_table") or die(mysqli_error());
mysqli_query($connection_name,'INSERT INTO web_formitem (ID, formID, caption, key, sortorder, type, enabled, mandatory, data) VALUES (105, 7, Tip izdelka (6), producttype_6, 42, 5, 1, 0, 0)');
しかし、ベストプラクティスは
$connetion_name=mysqli_connect("localhost","root","","web_table") or die(mysqli_error());
$sql_statement="INSERT INTO web_formitem (ID, formID, caption, key, sortorder, type, enabled, mandatory, data) VALUES (105, 7, Tip izdelka (6), producttype_6, 42, 5, 1, 0, 0)";
mysqli_query($connection_name,$sql_statement);
もちろん、質問には回答しましたが、コードの3行目に気付く人はいないようです。それは絶えず私を悩ませました。
<?php
mysqli_connect("localhost","root","","web_table");
mysql_select_db("web_table") or die(mysql_error());
何らかの理由で、サーバーへのmysqli接続を確立しましたが、データベースへのmysql接続を確立しようとしています。
$link = mysqli_connect("localhost","root","","web_table");
mysqli_select_db ($link , "web_table" ) or die.....
または私が始めた場所
<?php $connection = mysqli_connect("localhost","root","","web_table");
global $connection; // global connection to databases - kill it once you're done
または、上記のような他の引数として$ connectionパラメータを使用してクエリします。その3行目を取り除きます。
Php mysqli関数を使用している間、接続の詳細が最初に言及され、クエリが関数に渡されることに注意してください
$cid=mysqli_connect("server", "username", "password", "database_name") or die (mysql_error());
mysqli_query($cid, $query) or die (mysqli_error($cid));
$result=mysqli_affected_rows($cid);
if($result===TRUE)
echo"The query ran successfully";
else
echo"The query did not run";
mysqli_close($cid);
$ cidは、上記のコードの接続データを保持する変数であることに注意してください。