• 締切済み

php,sqlのテーブル作成について

php,sql文について質問があります。 現在、テキストボックスに文字を入力したら、DBにその名前のテーブルを新規作成するプログラミングに挑戦中なのですが、 以下のプログラミングでは、テーブルが作成されません どこ を直したらいいのでしょうか? php,sqlに詳しい方どうかご教授お願い致します。 <?php try{ $dbh = new PDO('mysql:host=localhost;dbname=aaaa','bbbb','cccc'); }catch (PDOException $e){ var_dump($e->getMessage()); } $stt = $db->prepare('CREATE TABLE date( abcID char(6) )' ); echo'テーブルを新規作成しました'; ?> ちなみに以下のプログラミグでデーターベースに接続出来ることは確認しております <?php try{ $dbh = new PDO('mysql:host=localhost;dbname=aaaa','bbbb','cccc'); } catch(PDOException $e){ var_dump($e->getMessage()); exit; } echo'DBに接続しました'; ?>

みんなの回答

  • agunuz
  • ベストアンサー率65% (288/438)
回答No.2

「テーブルが作成されません」とか以前に、エラー(Fatal error)で止まりますよね。 >$dbh = new PDO('mysql:host=localhost;dbname=aaaa','bbbb','cccc'); なのに、 >$stt = $db->prepare('CREATE TABLE date( abcID char(6) )' $dbは未定義です(当然prepareメソッドなどは使えません)。 デバッグ時には「エラーメッセージを表示する設定」にしてください。その他細かい部分は下記URLで書きましたww http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13119553918

  • t_ohta
  • ベストアンサー率38% (5238/13705)
回答No.1

prepareで実行の準備をしたらexecuteで実行しなければいけません。

kanmaiku
質問者

補足

<?php try{ $dbh = new PDO('mysql:host=localhost;dbname=aaaa','bbbb','cccc'); }catch (PDOException $e){ var_dump($e->getMessage()); } $stt = $db->prepare('CREATE TABLE date( abcID char(6) )'); $stt->execute(); echo'テーブルを新規作成しました'; ?> こちらでいいのでしょうか? こちらを実行しても何もデーターベースに反映されませんでした 他にどこかおかしいのでしょうか?

関連するQ&A