0

インターンシップのインベントリ プログラムを作成しています。ラジオボタンで動作するカテゴリのデータリストがあります。ユーザーが [はい] をクリックすると、新しいカテゴリを入力できます。ユーザーが [いいえ] をクリックすると、データリストのオプションから選択する必要があります。

以下の点について、経験からのアドバイスをお願いします。

ユーザーが [はい] をクリックして新しいカテゴリを入力した場合、この値がデータリストの他の値と一緒に保存されるようにするための最良の方法は何ですか?

現時点では、私はこのコードを使用しようとしています:

    <?php
$dbhost="localhost";
$dbuser="root";
$dbpass="admin";
$dbname="test";

$con=mysql_connect($dbhost, $dbuser, $dbpass) or die('Error connecting to the database:' . mysql_error());

$mysql_select_db($dbname, $con);

$sql="INSERT INTO test (test, Naam, Adress, Land) 
         VALUES (' ', '$_POST[Naam value]','$_POST[Adress value]','$_POST[Land value]')";

mysql_query($sql);

$lastid=mysql_insert_id();

$sql2=INSERT INTO test2 (test, test2, NieuweCategorie, NameNew, Categorie)
              VALUES ($lastid, ' ', '$_POST[NieuweCategorie value]','$_POST[NameNew value]','$_POST[Categorie value]')";


mysql_query($sql2);

mysql_close($con);

?>

何らかの理由で、これを使用してもエラーは発生しません。実際、データが「正常に挿入されました」という通知が表示されますが、データがデータベースに保存されていません。

うまくいけば、この質問は広すぎず、私が望むものを明確にするのに十分な情報を投稿したことを願っています!

すべての助けを前もってありがとう!

4

1 に答える 1

0
  1. 関数は変数ではなく、変数だけが$符号を持っています:mysql_select_db();

  2. mysql_非推奨の関数を使用しないでください。ドキュメントを調べてください。代わりに、PDO や mysqli または mysqlnd などのより優れた関数があります。

  3. SQL インジェクションとコード インジェクションは PHP だけのものではなく、すべての言語で発生する可能性があります。Google でセキュリティの改善を確認してください。

  4. (最初のアドバイスであるべきです)基本から始めましょう。文字列と変数を連結する方法、引用符と囲みについて、私が十分に示すことができないものはZend Code Style Guideです

  5. 基本をマスターしたら、オブジェクトに進みます。手続き型からオブジェクト指向に変わると、php プロジェクトがあらゆる面で 1500% 向上します

  6. 一度にすべてを実装しようとしないでください。一歩一歩進んでください。PHP はコードの使用例を非常に多く提供しています。コード全体ではなく、コードの各行を理解するようにしてください。

  7. 高度な手順を習得したい場合は、プロ スタイルに進み、DoctrineZend Frameworkなどのライブラリを使用できます。

  8. 私はつい最近プログラミングを始めたばかりです [...] とインターネット。この言語をマスターするには、stackoverflow と php.net だけが必要です。

于 2013-08-05T09:00:50.777 に答える