PHPを使用して基本的な挿入クエリを実行し、HTMLフォームデータをMySQLデータベースに送信することを検討しています。 しかし、残念ながら、挿入プロセスは実行されていません。 私の挿入構文では、$ _POST [fieldname]を含めて試しましたが、以下のように変数を含めて試してみましたが、iveも異なるapostrphesで再生しましたが、何も動作していないようです。MySQLがPHPが動作しない
をサイドディッシュとして使用していますが、私はまた、トラックの負荷を圧倒しています。圧倒されています.pini.iniファイルではiveが無効になっており、apache.iniファイルではphpが無効になっています。
誰かが私の挿入物と他の何かに間違っているとアドバイスできたら、大変感謝します。
このイントロを直視しないでください。 Personはログインしないでログインしようとするとログインページに戻り、ログインします。 外部の設定ファイルを使用してデータベースに接続し、別の場所でホスティングしているときに50か所で更新を保存します。 設定ファイルが正常に動作しているため、以下に示されていません。 データベースはmydbと呼ばれます。 テキストフィールド項目を変数に格納してから、挿入クエリの変数を使用します。 unitIDは自動インクリメントフィールドなので、挿入を実行するときは空白のままにします。 残念ながら、mysqlデータベースに何も入っていません。 ありがとうございます。 PSテキストフィールド名がすべて正しく
<?php
//Start the session
session_start();
//check the user is logged in
if (!(isset($_SESSION['Username']))) {
header ("Location: LoginPage.php?i=1");
exit();
}
//Connect to the database
include 'config.php';
$UserName = $_SESSION['Username'];
$UserIdentification = $_SESSION['UserID'];
if(isset($_GET['i'])){
if($_GET['i'] == '1'){
$tblName="sightings";
//Form Values into store
$loco =$_POST['txtloco'];
$where =$_POST['txtwhere'];
$when =$_POST['txtdate'];
$time =$_POST['txttime'];
$origin =$_POST['txtorigin'];
$dest =$_POST['txtdest'];
$headcode =$_POST['txtheadcode'];
$sql= "INSERT INTO sightings (unitID, Class, Sighted, Date, Time, Origin, Destination, Headcode, UserID) VALUES ('','$loco', '$where', '$when', '$time', '$origin', '$dest', '$headcode', '$UserIdentification')";
mysql_select_db('mydb');
$result=mysql_query($sql, $db);
if($result){
$allocationsuccess = "Save Successful";
header ('Refresh: 2; url= create.php');
}
else {
$allocationsuccess = "The submission failed :(";
}
}
}
?>
[Little Bobby](http://bobby-tables.com/)は** [あなたはSQLインジェクション攻撃の危険にさらされている可能性があります](https://stackoverflow.com/q/60174/)**。 [パラメータ化されたクエリ](https://stackoverflow.com/a/4712113/5827005)で[Prepared Statements](https://en.wikipedia.org/wiki/Prepared_statement)について学んでください。パラメータ化されていないクエリを使用するよりも、非常に簡単に、きれいに、より安全にするために、[PDO](http://paragoncds.com/grumpy/pdoquery/#function)を作成することをお勧めします。また、[この記事(http://php.net/manual/en/mysqlinfo.api.choosing.php)]では、 'MySQLi'と' PDO'を選択するのに役立つかもしれません – GrumpyCrouton
** **、使用しないでください'mysql_ *'は新しいコードのために機能します。それらはもはや維持されず、コミュニティは[非推奨プロセス](http://news.php.net/php.internals/53799)を開始し、mysql_ *関数はPHP 7で正式に削除されました。 [prepared statements](https://en.wikipedia.org/wiki/Prepared_statement)について学び、 'PDO'か' mysqli_ * 'を使います。あなたが決定できない場合、[この記事はあなたの最善の選択肢を選ぶのに役立ちます](http://php.net/manual/en/mysqlinfo.api.choosing.php)。 – GrumpyCrouton
'圧倒的なデプロイエラー、php.iniではiveが無効になっていて、apache.iniファイルではphpが無効になっています。おそらく減価償却された関数の使用を止めますか?なぜあなたはエラーを無視しようとしますか?それはただ無責任です。 – GrumpyCrouton