0

JavaScript/CSS/コードを MYSQL データベースに INSERT しようとしています。Adcode は、テキストエリアから以下の PHP コードに渡されます。INSERT では、adname で成功しますが、adcode では空白です。

質問/問題:

  1. コードが渡されるのではなく、空白のコードがデータベースに入力されるのはなぜですか
  2. これを行う最も効率的な理由は何ですか?
  3. Adname と Adcode と UPDATE を同時に渡すにはどうすればよいですか。

私の最初のコード: バージョン 1 (以下のコードのバージョン 2 の問題/質問 1 を修正)

// Insert ad into database
    $ad = mysql_real_escape_string($_POST['adcode']);
    $insert = "INSERT INTO ads (adname, adcode) VALUES ('".$_POST['adname']."', '".$_POST['$ad']."')";
    $doit = mysql_query($insert);

私の現在のコード:バージョン 2 (質問 1 と 2 の場合)

if ($_GET['action'] == "editad") {  // Edit AD
    $newadcode = mysql_real_escape_string($_POST['adcode' . $ID]);
    $doedit = "UPDATE `adgate`.`ads` SET `ads`.`adcode` = '$newadcode' WHERE `ads`.`ID` = '$ID' LIMIT 1" or die(mysql_error());
    $retval = mysql_query( $doedit, $connection );
    if(! $retval )
    {
        die('Could not update data: ' . mysql_error());
    }
    echo "Updated data successfully\n";
    //header("Location: displayads.php");
4

2 に答える 2

1

試す:

$adname = mysql_real_escape_string($_POST['adname']);
$adcode = mysql_real_escape_string($_POST['adcode']);
$insert = "INSERT INTO ads (adname, adcode) VALUES ('".$adname."', '".$adcode."')";
$doit = mysql_query($insert);
于 2012-10-05T02:50:27.050 に答える
1

間違いを見つける:

$ad = mysql_real_escape_string($_POST['adcode']);
^^^
... "... VALUES ('".$_POST['adname']."', '".$_POST['$ad']."')";
                                            ^^^^^^^^^^^^^

開発中のエラー報告を有効にしてください! これは良い警告を投げたでしょう。

于 2012-10-05T02:51:41.993 に答える