2017-02-16 5 views
0

PicPHP mysqli wokingなし

だから私はmysqliを初めて使いました。私がオンラインで見つけたすべての例は、物事を行うための古い(手続き的な)方法のようです。誰かが私のコードが以下で動作しない理由を教えてもらえますか?私のdbは 'templatedb'です。私のテーブルは「テンプレート」です。私はテーブルに1つのエントリーを持っていますが、私のエコーでは何も出力されません。私は自分のコードに何の誤りもありません。

 <div id="templateSelector"> 
     <?php 
     $hostname = "localhost"; 
     $username = "root"; 
     $password = ""; 
     $db = "templatedb"; 
     //connect 
     mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); 
     $database = mysqli_connect($hostname, $username, $password, $db); 
     if(!$database){ 
      die("Could not connect to the database");     
     } 

     if ($database->connect_errno) { 
      echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error; 
     } else { 
      $sql = "SELECT * FROM template"; 
      if (!$result = $database->query($sql)) { 
       die('There was an error running the query [' . $db->error . ']'); 
      } else { 

       echo "<label>Select Template</label>"; 
       echo "<select name='templates'>"; 
       while ($row = $result->fetch_assoc()) { 
        echo "hello"; 
        echo $row['template_name']; 
        // echo "<option value='" . $row['template'] . "'>" . $row['template'] . "</option>"; 
       } 
       echo "</select>"; 
      } 
     } 
     ?> 
+0

テーブルにレコードがないか、すべてのエラーではないと表示されています –

+0

この問題は、発生したすべてのエラーを表示するのに役立つ回答へのリンクで終了します。テーブルの内容については、ここでは責任を負いません。 –

+0

私は 'mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);という行を追加しました。 before 'mysqli_connect(..)'エラーはありません。私は私のdbのスクリーンショットで質問を更新しています。 –

答えて

-2

は、次のことをやって試してみてください、あなたのデータベースがtemplatedbと呼ばれ、それがであるテーブルがtemplateと呼ばれ、idと呼ばれる行があることを確認してください私のため

<div id="templateSelector"> 
<?php 
$hostname = "localhost"; 
$username = "root"; 
$password = ""; 
$db = "templatedb"; 
$mysqli = mysqli_connect($hostname, $username, $password, $db); 
if($mysqli->connect_errno) { 
    echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error; 
} else { 
    $sql = "SELECT * FROM template"; 
    $result = mysqli_query($mysqli, $sql); 
    if(!$result = $mysqli->query($sql)) { 
     die('There was an error running the query [' . $db->error . ']'); 
    } else { 
     echo "<label>Select Template</label>\n"; 
     echo "<select name='templates'>\n"; 
     while($row = $result->fetch_assoc()) { 
      echo "<option>id = " . $row['id'] . "</option>\n"; 
     } 
     echo "</select>"; 
    } 
} 
?> 
</div> 

enter image description here

を働きました。私はそれが些細なことを知っているが、スペルミスはあなたのコードを壊すでしょう。

+0

私は、まだDBからの出力をしませんでした。 –

+0

私は、DB構造の写真を見ました。 –

+0

スペルを確認し、データベースに少なくとも1行が存在することを確認します。このコードはすべてが正しいと仮定して動作する必要があります(mysqlのユーザ名とパスワードが正しいこと、権限があることなどを確認してください) – Kaboom