私は教員のためのプロジェクトを行っています。注文のためのWebアプリケーション、つまりUPSが送信したいメールを受け取るためのプロジェクトです。私は、submitを使って注文フォームを実行すると、私が作成したスクリプトが私のDBのテーブルにデータを挿入していないという問題があります(接続は機能しています)。MySql DB(使用中のXAMPP)に注文を入力しない注文のPHPスクリプト
if(isset($_POST['city']) && isset($_POST['contact']) && isset($_POST['adress']) && isset($_POST['priority']) && isset($_POST['box_size'])){
if(isset($_POST['del_name']) && isset($_POST['del_lname']) && isset($_POST['del_adress']) && isset($_POST['del_pob'])){
if($_POST['priority'] == "Ne" && $_POST['box_size'] == "1*1*1"){
$_POST['price'] = "50kn";
$sql = "INSERT INTO orders SET price='$_POST[price]', city='$_POST[city]', contact='$_POST[contact],
adress='$_POST[adress]', del_adress='$_POST[del_adress]', del_pob='$_POST[del_pob]', box_size='$_POST[box_size]',
priority='$_POST[priority]', del_name='$_POST[del_name]', del_lname='$_POST[lname]'";
$result=mysql_query($sql);
}
上記のコードは、フォームのすべてのフィールドが設定されているかどうかを確認する条件を示しています。表内のすべての属性はvarchar
です。
<form name="form2" method="post" action="order_script.php">
<h2>Pošiljatelj</h2>
<p><!--Ovdje ide ime $_GET od ulogiranog--></p>
<p><!--Ovdje ide $_GET prezime od ulogiranog--></p>
<p>Grad/Mjesto: <input type="text" name="city" size="25" maxlength="20" value=""/></p>
<p>Kontakt broj: <input type="text" name="contact" size="25" maxlength="20" value=""/></p>
<p>Adresa: <input type="text" name="adress" size="25" maxlength="20" value=""/></p>
<!--select for box_size-->
<p>Brzina dostave/Prioritet: <select name="priority">
<option value="">Da</option>
<option value="">Ne</option>
</select></p>
<p>Veličina kutije: <select name="box_size">
<option value="sm">1*1*1</option>
<option value="md">2*2*2</option>
<option value="lg">3*3*3</option>
<option value="xl">4*4*4</option>
</select></p>
<h2>Primatelj</h2>
<p>Ime: <input type="text" name="del_name" size="25" maxlength="20" value=""/></p>
<p>Prezime: <input type="text" name="del_lname" size="25" maxlength="20" value=""/></p>
<p>Adresa: <input type="text" name="del_adress" size="25" maxlength="20" value=""/></p>
<p>Poštanski broj: <input type="text" name="del_pob" size="25" maxlength="20" value=""/></p>
<!--Price of delivery hidden -->
<input type="hidden" name="price" size="25" maxlength="20" value=""/></p>
<p><input type="submit" name="order" value="Naruči"/></p><br></br>
</form>
フォームを送信すると、スクリプトが実行され、空のページが表示されます。
あなたのSQLクエリが実行されていないことを意味しますか?あなたの質問のタイトルの単語を理解するのに5分かかります。笑 –
あなたのコードが完全なコピーであれば、クエリに文法エラーがあります: 'contact = '$ _ POST [contact]、' – lolbas
あなたのエラーログを見ますか?それはあなたの完全なPHPコードです。また、SQLインジェクションと 'isset'は複数の変数を取ることができます。 – chris85