2017-03-12 7 views
0

なぜPDOがワンプで動作していないのですか?私のPHPはコードだと思いますが、MySQLデータベースからデータを挿入して取得することができません。どうすれば修正できますか?なぜPDOがワンプで動作していないのですか?

<?php 

$db = new PDO('mysql:host=localhost;dbname=ajaxdata','root',''); 

$page = isset($_GET['p'])?$_GET['p']:''; 
if($page=='add') { 
    $name = $_POST['nm']; 
    $email = $_POST['em']; 
    $phone = $_POST['pn']; 
    $address = $_POST['ad']; 
    $stmt = db->prepare("INSERT INTO info VALUES('',?,?,?,?)"); 
    $stmt->bindParam(1,$name); 
    $stmt->bindParam(2,$email); 
    $stmt->bindParam(3,$phone); 
    $stmt->bindParam(4,$address); 
    if($stmt->execute()){ 
     echo "Success add data"; 
    } else { 
     echo "Fail add data"; 
    } 
} else if($page=='edit'){ 

} else if($page=='del'){ 

} else{ 
    $stmt = $db->prepare("SELECT * FROM info"); 
    $stmt->execute(); 
    while($row = $stmt->fetch()){ 
     ?> 
     <tr> 
      <td><?php echo $row['id'] ?></td> 
      <td><?php echo $row['name'] ?></td> 
      <td><?php echo $row['email'] ?></td> 
      <td><?php echo $row['phone'] ?></td> 
      <td><?php echo $row['address'] ?></td> 
      <td> 
       <button class="btn btn-warning">Edit</button> 
      </td> 

     </tr> 
     <?php 
    } 
} 
?> 

私はこのエラーをwampから解決する方法がわかりません。どうすればよいか教えてください。

$stmt = db->prepare("INSERT INTO info VALUES('',?,?,?,?)"); 
// ^

次のようでなければなりません:

+0

はなぜ文字 'です;'にdb接続ステートメント?そしてあなたが得ているエラーは何ですか? –

+0

取得しているエラーやログファイルを正確に教えてください。それはもっと役に立つでしょう –

+0

データベースからデータを取り出すことができません。何がエラーなのか分かりません。 – martinBibo

答えて

1

あなたのDBオブジェクトvariable呼び出すことでここにドル記号が欠落している、\ ``後

$stmt = $db->prepare("INSERT INTO info VALUES('',?,?,?,?)"); 
+0

'id 'プレースホルダーの'' ''は恐らく最もよく不要です。 – RiggsFolly

関連する問題