別のスタックオーバーフローの質問からこのコードを取得しましたhere。PHPスクリプトがデータベースにデータを書き込んでいない
私のデータベースにはtrackというmysqlテーブルがあります。
$server = "host";
$username = "user";
$password = "pass";
$database = "database";
$connId = mysql_connect($server,$username,$password) or die("Cannot connect to server");
$selectDb = mysql_select_db($database,$connId) or die("Cannot connect to database");
$tracking_page_name="example";
$ref=$_SERVER['HTTP_REFERER'];
$agent=$_SERVER['HTTP_USER_AGENT'];
$ip=$_SERVER['REMOTE_ADDR'];
$host_name = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$strSQL = "INSERT INTO track (tm, ref, agent, ip, tracking_page_name, host_name) VALUES(curdate(),'$ref','$agent','$ip','$tracking_page_name','$host_name')";
$test=mysql_query($strSQL);
基本的には、このスクリプトが収集するすべてのデータを自分のデータベースに入れたいと思います。しかし、私が何を入力しても、変数をテキストに変更しても、何もデータベースに書き込まれません。私は別のスクリプトを使ってデータベースから読み込むことはできますが、これを取得してDBに情報を追加することはできません。私はちょうど見つけることができないタイプミスはありますか?
私はこれはに含まれますページを訪れた誰についての情報が欲しい
EDIT:私は「HOST_NAME」というフィールドを埋めるためにしようとしていたが、私のデータベースには、別の名前を持っていました。ここに示されているオリジナルのスクリプトはエラーを表示せず、自分のフィールドがすべて整っているかどうかを確認するためにチェックを実行しませんでした。それがエラーでした。
mysql deprecated use myslqi preapared statement – JYoThI
私は何を置き換えていいですか? –
クエリをエコーします。接続の問題よりもクエリが値を与える場合は、問題が発生した場合はmysqliを使用してください。 –