下記のプログラムを実行すると
Failed to create (table14_2)!
というエラーメッセージが出てしまい、テーブルを作ることができません。
どこが間違っていますか?
<?php
$hostname = *****
$username = *****
$password = ******
$dbname = 'testdb100';
$tablename = 'table14_2';
$create_query = "CREATE TABLE $tablename (Id INT NOT NULL AUTO_INCREMENT, ".
"UserName VARCHAR(20), ".
"Email_address VARCHAR(50), ".
"Phone_number INT ".
"Contents VARCHAR(500) ".
"PRIMARY KEY(Id)) CHARACTER SET utf8";
$result;
function is_table_exists()
{
global $link, $tablename, $create_query, $result;
$result = mysqli_query($link, "SHOW TABLES LIKE '" . $tablename . "'");
$table_exists = $result->num_rows ? true : false;
if (!$table_exists) {
$result = mysqli_query($link, $create_query);
if (!$result) {
exit("Failed to create ($tablename)!");
}
}
return $table_exists;
}
function show_table()
{
global $link, $tablename, $result;
$result = mysqli_query($link, "SELECT * FROM $tablename");
if (!$result) {
exit("Failed to show ($tablename)!");
}
while ($row_assoc = mysqli_fetch_assoc($result)) {
echo "<hr>";
echo "{$row_assoc['Id']}. " .
"{$row_assoc['UserName']} " .
"<br>";
echo "{$row_assoc['Contents']}";
}
echo "<hr>";
}
echo <<< EOT
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>14-1</title>
</head>
<body>
<h1> お問い合わせフォーム </h1>
EOT;
$link = mysqli_connect($hostname, $username, $password, $dbname);
if (! $link) exit("Connect error!");
is_table_exists();
show_table();
mysqli_free_result($result);
mysqli_close($link);
echo <<< EOT
<form method="post" action="14_2.php">
<button type="submit" name="transition" value="new_post">お問い合わせ</button>
</form>
</body>
</html>
EOT;
?>
No.2ベストアンサー
- 回答日時:
CREATE TABLE文の文字列で、2箇所、最後のカンマが抜けています
Phone_number INT,
Contents VARCHAR(500),
No.1
- 回答日時:
$create_query の内容が文法誤りを起こしてるみたいです。
https://www.bing.com/search?q=mysql+syntax+checker で見つかったところでチェックしてみた例。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- PHP php エラー 2 2022/10/23 16:43
- PHP php エラー 3 2022/11/18 23:32
- PHP php ログイン 1 2022/11/01 00:24
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- PHP DBのハッシュ化したパスワードをpassword_verifyで戻し照合したのですが上手く行きません 2 2023/02/06 13:24
- MySQL SHOW CREATE TABLE posts;これって何ですか? 3 2022/08/28 22:57
- MySQL `picture` varchar(255) のコマンドで間違いないでしょうか? 1 2022/11/21 04:08
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テーブルの最後のレコードしか...
-
ファーストサーバのレンタルサ...
-
MySQLでデータベースにデータin...
-
insert1つの処理でもトランザ...
-
【ASP.NET】MySQLのテーブルレ...
-
テキストボックスに入れた内容...
-
SQL文が実行できません
-
SQLインジェクション対策
-
エラー3011
-
phpでmysqlを使ってデータベー...
-
PHPについて。
-
実行時エラー3131 FROM 句の構...
-
VBAをつかってクエリの情報を抽...
-
Accessのテーブルへ複数の主キ...
-
stringaddslashes 半角¥が消える
-
mysql_fetch_array の関数について
-
UPDATE文のWHERE句について
-
DB(MySQL)から複数行のデータを...
-
アラートでyes noを作りたいです。
-
Resource id #3 をフィールドの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
php データ削除
-
GROUP_CONCATで条件指定
-
HTMLの質問・・段落のしたかを...
-
ACCESSのテーブルをHTMLファイ...
-
phpでcsvをhtmlにしたい
-
MySQLで0で検索できない
-
MySQLが使えますレンタルサーバ...
-
MySQLにHTMLタグを挿入したい
-
PHP+MySqlでの検索
-
MySQLのデータベースを呼んで日...
-
mysqlより取り出した値が、noti...
-
phpからdbへアクセスし、レコー...
-
PHPからMySQLへの検索
-
MySQLでデータベースにデータin...
-
実行時エラー3131 FROM 句の構...
-
VBAをつかってクエリの情報を抽...
-
insert1つの処理でもトランザ...
-
JAVA SQLServerException 列名 ...
-
Pro*Cの構文エラー
-
<VB.NET>INSERT文でDBにデータ...
おすすめ情報