初歩的で恐縮ですが
PHP5,4手続き型で書く場合についてです。
うまくMYSQLにインサートの文章がかけず
or die("データ追加エラー");のエラーの表示しかされず右往左往しています。
<?php
$sv = "mysql.xxx.jp";
$dbname = "bbb";
$user = "bbb";
$pass = "aaa";
$txt="あああ";
$ip="1234";
$ua="mac";
//接続
$link = mysqli_connect($sv, $user, $pass,$dbname);
//クエリ文
$query = "INSERT INTO data1 (txt,ip,ua) VALUES('$txt','$ip','$ua')";
//書込不可ならエラー表示
$result = mysqli_query($link, $query) or die("データ追加エラー");
?>
txt,ip,uaというカラムは作ってあります。そこに各変数のデータを入れたいのです。
ご指摘、添削いただけますとありがたいです。
よろしくお願い致します。
No.2
- 回答日時:
mysqli_query()で実行するのは変数など渡さないような単純なSQL文です
どうしても変数を渡したい場合は#1さんの指摘するよう
mysqli_real_escape_string()でエスケープ処理をしてください
http://php.net/manual/ja/mysqli.real-escape-stri …
mysqli_系でもプリペアド処理ができるのでそちらを利用する方がいいと思います
http://php.net/manual/ja/mysqli.prepare.php
No.1ベストアンサー
- 回答日時:
接続時にエラーになっていたりはしないんですよね?
$link = mysqli_connect($sv, $user, $pass,$dbname) or die('接続エラー');
日本語を扱うなら、mysqli_set_charsetが必須です。
http://www.php.net/manual/ja/mysqli.set-charset. …
あと、データベースに挿入するデータを「エスケープする」という発想はないんですか?
http://www.php.net/manual/ja/mysqli.real-escape- …
$query = sprintf("INSERT INTO data1 (txt,ip,ua) VALUES('%s','%s','%s')", mysqli_real_escape_string($txt), mysqli_real_escape_string($ip), mysqli_real_escape_string($ua));
というか、MySQLiの手続き型ってMySQL関数からの「応急処理的な」書き替えなら仕方ないですが、本来ならオブジェクト型で書く方が楽だと思いますけどね。で、どうせならPDOにしてしまってもいいんじゃないかと思いますけど(MySQLiでないと困ることってそれほどないでしょ)。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- PHP PHP一覧表示した項目にリンクをはりたい 1 2023/07/12 17:08
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- PHP php エラー 2 2022/10/23 16:43
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ワードプレスサイト PHP8.0.25...
-
パースエラーとは?
-
phpでクラスのメソッドで同名の...
-
phpでPEAR::DBを使っているので...
-
ローカルでは正常に動くのにサ...
-
PHPのHttpRequestモジュールに...
-
fgetcsv_regについてのご質問
-
フォントの色を変えるには?
-
preg_replace() で、 urlencode()
-
centOSにcakePHPを入れた際のエ...
-
awsにApacheとPHPを入れて、何...
-
php pear mdb2に質問です。
-
phpの imap_search で漢字コード
-
onedrive にexcelファイルをア...
-
こちらはただの直列処理ですか?
-
ワードプレス、Contact Form 7...
-
拡張子php画像をjpg画像等に変...
-
PHPとCSVで簡易データベースな...
-
include先でのinclude元の変数...
-
リダイレクト元のURLの取得方法...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォントの色を変えるには?
-
PHP8を使うと、大量のWarningが...
-
awsにApacheとPHPを入れて、何...
-
phpでPEAR::DBを使っているので...
-
ワードプレスサイト PHP8.0.25...
-
パースエラーとは?
-
phpでクラスのメソッドで同名の...
-
PHPで、エラーがない場合のみ画...
-
トランザクションが原因?DBに...
-
「@$変数」の「@の意味は?」
-
PHPでfatal errorが出ても無視...
-
PHPで特定のURLにジャンプす...
-
正規表現での最後尾のバックス...
-
PHPでネットワークドライブのop...
-
bindValueエラー
-
error_reporting(0);にも関わら...
-
これは例外処理でしょうか?
-
ある条件に当てはまったときに...
-
php5.6でsimplexml_load_string...
-
PHPでSMTPを使ってメール送信で...
おすすめ情報