2016-04-05 19 views
-3

私のデータベースにhtmlの入力を挿入しようとしています。 PHPは私にエラーを返しませんが、私がデータベースに行ったとき、何もありません、なぜですか?PHPデータベースに挿入する

if(isset($_POST['texte'])) { 
     $texte = $_POST['texte']; 
     try 
     { 
      $dbh = new PDO('mysql:host=localhost;dbname=textes', 'root', ''); 
      $req = $dbh->prepare('INSERT INTO textes VALUES(txt)'); 
      $req->execute(array(
       'txt' => $texte 
      )); 

      echo 'Le jeu a bien été ajouté !'; 
     } 
     catch (Exception $e) 
     { 
       die('Erreur : ' . $e->getMessage()); 
     } 
+0

[こちら](https://secure.php.net/manual/en/pdo.prepared-statements.php) – jDo

+1

PDOはデフォルトで「例外モード」になっていないことにご注意ください。単に設定するだけです'$ dbh-> setAttribute(PDO :: ATTR_ERRMODE、PDO :: ERRMODE_EXCEPTION);' – Federkun

+0

でこの動作を変更しない限り、検査するエラーコードは最近あなたのPHPエラーログを見ましたか? – RiggsFolly

答えて

1

PDOという名前のパラメータが:で始まる:

 $req = $dbh->prepare('INSERT INTO textes VALUES(:txt)'); 
     $req->execute(array(
      ':txt' => $texte 
     )); 
+0

私はそれを追加しましたが、何も..... –

-1

データベースに応じて、あなたはおそらく必要なトランザクション性 - これはコミット意味します。ロールバックする。自動コミットがオンであることを確認する必要があります。そうしないと、挿入は成功しますが、データは保存されません。

-1
$req = $dbh->prepare("INSERT INTO textes VALUES(:txt)"); 
    $req->execute(array(
       "txt" => $texte 
));`); 

作品があれば教えてください。

関連する問題