PHPmyAdmin に「people」という 4 列のテーブルを作成し、2 行のデータを入力しました。「db.php」というファイルにある Azure のドキュメントのこのコードを使用して、データベースに接続しました。
db.php:
$connectstr_dbhost = '';
$connectstr_dbname = '';
$connectstr_dbusername = '';
$connectstr_dbpassword = '';
foreach ($_SERVER as $key => $value) {
if (strpos($key, "MYSQLCONNSTR_localdb") !== 0) {
continue;
}
$connectstr_dbhost = preg_replace("/^.*Data Source=(.+?);.*$/", "\\1", $value);
$connectstr_dbname = preg_replace("/^.*Database=(.+?);.*$/", "\\1", $value);
$connectstr_dbusername = preg_replace("/^.*User Id=(.+?);.*$/", "\\1", $value);
$connectstr_dbpassword = preg_replace("/^.*Password=(.+?)$/", "\\1", $value);
}
$link = mysqli_connect($connectstr_dbhost, $connectstr_dbusername, $connectstr_dbpassword,$connectstr_dbname);
if (!$link) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL;
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL;
うまく響き渡る Success: A proper connection to MySQL was made!...
今、YouTube のチュートリアルに従って、このコードを使用してテーブルのデータを渡し、json 形式に変換しようとしています。
fetch.php:
include_once('db.php');
$query = "SELECT * FROM `people`";
$res = mysqli_query($link,$query);
if($res !== FALSE)
{
echo "table found";
}
else
{
echo "table not found";
}
$result = array();
while( $row = mysql_fetch_array($res) )
array_push($result, array( 'id' => $row[0],
'firstname' => $row[1],
'lastname' => $row[2],
'address' => $row[3]));
echo json_encode(array("result" => $result));
しかし、これはただ反響するだけです table not found
私は SQL と PHP の両方に非常に慣れています。何が悪いのですか?
私は MySQL と MySQLi を混在させていたことがわかりました。最後のコード ブロック (テーブルを JSON に変換する) は MySQL を使用しています。これを変更して動作させました。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加