私はデータベースでうんざりしていたので、自己教えのスターターとして、少し問題があります。 以下は動作していないコードの部分です。これはサーバへの接続が成功していることを上回っています。 ここからは更新に失敗しています。理由はわかりません。 私のシステムでは、PDOで実行する必要があると思えば、動作中のPDO接続文字列があります。 この時点で私は空中に穴を開ける。 あなたの時間を感謝します。 MySQLの構文はinsert
構文ではなく、更新されていることをがSQLの問題を抱えている
$stmt = $conn->prepare("UPDATE bfl SET gamerid="?", name="?", age="?",location"?", email="?", console="?"WHERE team="?" ");
$stmt->bindParam(1, $gamerid);
$stmt->bindParam(2, $name);
$stmt->bindParam(3, $age);
$stmt->bindParam(4, $location);
$stmt->bindParam(5, $email);
$stmt->bindParam(6, $cosole);
$stmt->bindParam(7, $team);
$stmt->execute(array($gamerid,$name,$age,$location,$email,$console,$team);
これは 'update'構文ではなく' insert'構文です。 'mysql_ *'も 'pdo'と混在しないで' pdo'を使ってクエリをパラメータ化するべきです。更新構文についてはhttps://dev.mysql.com/doc/refman/5.7/en/update.htmlを参照してください。さらに、一重引用符で囲まれた変数は変数ではありません。ここでは多くの問題があります。 – chris85
SET gamerid = "$ gamerid"、name = "$ name"などのようになります。 私のpdo能力は事実上存在しません –
あなたの ' mysql_ * 'はそれほど遠くないように見えるので、船が沈む前に船を修正するかもしれない。 http://php.net/manual/en/pdo.prepared-statements.phpすべての値に '?'を使用し、バインディング関数または配列としての実行で値を渡します。例えば'$ std-> execute(array($ gamerid、$ name、$ age、$ location、$ email、$ console、$ team))'を実行し、 '$ pdo-> prepare 'のような準備をします(' update bfl SET gamerid =? WHERE team =? ') ' – chris85