1

私はphp接続について尋ねたい...私は2つの選択(リスト/メニュー)と2つの送信ボタンを持っています...ユーザーは最初の選択(リスト/メニュー)を選択し、select(の値である最初のボタンをクリックしますリスト/メニュー) はデータベースに保存されます...2 番目の選択 (リスト/メニュー) と 2 番目のボタンと同じです...各ボタンは異なる選択 (リスト/メニュー) を表します...

これは私のコードです

order.php

<form id="form1" name="form1" method="post" action="connect.php">
    <label for="milk">Milk</label>
    <select name="milk">
        <option value="0" selected="selected">Total</option>
        <option value="1">1</option>
         <option value="2">2</option>
    </select>
    <input type="submit" name="addmilk" id="addmilk" value="add" /> 
    <br />
    <label for="tea">tea</label>
    <select name="tea">
        <option value="0" selected="selected">Total</option>
        <option value="1">1</option>
         <option value="2">2</option>
    </select>
    <input type="submit" name="addtea" id="addtea" value="add" />
</form>

connect.php

<?php
$con = mysql_connect("localhost","root");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("restaurantDB", $con);

if(isset($_POST['milk'] as $milk))
{
$insert1="INSERT INTO orders(total) VALUES ('$milk')";
mysql_query($insert1);
echo $insert1;
}

if(isset($_POST['tea'] as $tea))
{
$insert2="INSERT INTO orders(total) VALUES ('$tea')";
mysql_query($insert2);
echo $insert2;
}

if (!mysql_query($insert1, $con))
{ echo "Order Succesfull";
die('Error: ' . mysql_error());
}

if (!mysql_query($insert2, $con))
{ echo "Order Succesfull";
die('Error: ' . mysql_error());
}
mysql_close($con) 

?>

エラーが発生しました

 Parse error: syntax error, unexpected T_AS, expecting ',' or ')' in C:\xampp\htdocs\order\connect.php on line 9

9行目は

 if(isset($_POST['milk'] as $milk))

ラベルをデータベースに保存する方法を知りたいです。

4

1 に答える 1

0

変化する:

if(isset($_POST['milk'] as $milk))

if(isset($_POST['milk']))

コード全体でこのエラーを繰り返しているため、teaなどのifステートメントも書き直す必要があります。

それを修正し終えたら、次を変更します。

$insert1="INSERT INTO orders(total) VALUES ('$milk')";

に:

$milk = mysql_real_escape_string($_POST['milk']);
$insert1="INSERT INTO orders(total) VALUES ('$milk')";

mysql関数は安全ではないため、近い将来、mysqliまたはPDOの使用を検討する必要があることに注意してください。

PHPマニュアルから:

この拡張機能の使用はお勧めしません。代わりに、MySQLiまたはPDO_MySQL拡張機能を使用する必要があります。詳細については、MySQL:APIガイドの選択および関連するFAQも参照してください。この機能の代替手段は次のとおりです。

編集:

connect.php

<?php
$con = mysql_connect("localhost","root") or die('Could not connect: ' . mysql_error());
mysql_select_db("restaurantDB", $con);

if(isset($_POST['milk']))
{
    $milk = mysql_real_escape_string($_POST['milk']);
    $insert1="INSERT INTO orders(total) VALUES ('$milk')";
    $insert = mysql_query($insert1) or die('INSERT FAILED: ' . mysql_error());
    if($insert){
        echo 'ORDER SUCCESSFUL<br />';
    }
    echo 'SQL: ' . $insert1;
}

if(isset($_POST['tea']))
{
    $tea = mysql_real_escape_string($_POST['tea']);
    $insert2="INSERT INTO orders(total) VALUES ('$tea')";
    $insert = mysql_query($insert2) or die('INSERT FAILED: ' . mysql_error());
    if($insert){
        echo 'ORDER SUCCESSFUL<br />';
    }
    echo 'SQL: ' . $insert2;
}

mysql_close($con) 

?>
于 2012-08-27T10:55:41.910 に答える