私は PHP の完全な初心者であり、mysql を使用しているので、HMTL と CSS の経験は豊富です。必要なのは、サイトのフォームがフォーム内の情報をデータベースにアップロードすることだけです。問題は、「送信」ボタンをクリックすると、.php ファイルのアドレスが入った空白のタブが開き、空白の白い画面が表示されることです。.php は以下です。
<?php
$hostname = "myHostName";
$username = "PreRegCustomers";
$dbname = "PreRegCustomers";
$password = "myPassword";
$usertable = "CustomerInfo";
mysql_connect($hostname, $username, $password) OR DIE ("Unable to
connect to database! Please try again later.");
mysql_select_db($dbname);
$sql = "INSERT INTO $usertable (firstName, lastName, streetAddress, city, state, zip, country, email, phone, badgeName)
VALUES ('$firstName', '$lastName', '$streetAddress', '$city', '$state', '$zip', '$country', '$email', '$phone', '$badgeName')";
$sql="INSERT INTO $usertable (firstName, lastName, streetAddress, city, state, zip, country, email, phone, badgeName)
VALUES ('".$_POST[firstName]."', '".$_POST[lastName]."', '".$_POST[streetAddress]."', '".$_POST[city]."', '".$_POST[state]."', '".$_POST[zip]."', '".$_POST[country]."', '".$_POST[email]."', '".$_POST[phone]."', '".$_POST[badgeName]."')";
?>
私が読んだことから、これは通常、コード内の何らかのエラーが原因です。私は PHP をよく知らないし、ページ内のほとんどすべてが他の人のコードから取られたものなので、これは私にとって難しいことです。コードからのそのほとんどは、godaddy.com (サイトとデータベースがホストされている場所) からの助けになります。
PHP がサポートされ、有効になっていることを確認するためにテストしました。既に問題なく機能しているフォーム メーラーがあります。DNS をセットアップし、複数の異なる構文を試しました。技術サポートに電話して、それが何か問題があるかどうかを確認しました。サイトを Windows から Linux に移行しましたが、変更したすべての結果がまったく同じ空白の白になります。画面。結局のところ、愚かなほど簡単に修正できるか、露骨に明白なものになることは間違いありませんが、誰かが見て、私が見逃しているものを確認できる場合は、非常に感謝しています.
投稿された回答のいくつかを取り入れた後の私の新しいコード。まだ NOTICE が表示されますが、まだデータベースに何も挿入されていません。
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
$hostname = "myHostName";
$username = "PreRegCustomers";
$dbname = "PreRegCustomers";
$password = "myPassword";
$usertable = "CustomerInfo";
//connect to mysql
$link_id = mysql_connect($hostname, $username, $password);
if (!$link_id) {
die("Unable to connect to database! Please try again later. error:".mysql_errno());
}
//make sure your DB exists
if (!mysql_select_db($dbname)) die ("Connected to mysql but could not connect to the DB. error:".mysql_errno());
//avoid sql_injection
$firstName = mysql_real_escape_string($_POST['firstName']);
$lastName = mysql_real_escape_string($_POST['lastName']);
$streetAddress = mysql_real_escape_string($_POST['streetAddress']);
$city = mysql_real_escape_string($_POST['city']);
$state = mysql_real_escape_string($_POST['state']);
$zip = mysql_real_escape_string($_POST['zip']);
$country = mysql_real_escape_string($_POST['country']);
$email = mysql_real_escape_string($_POST['email']);
$phone = mysql_real_escape_string($_POST['phone']);
$badgeName = mysql_real_escape_string($_POST['badgeName']);
//write the query
$sql = "INSERT INTO $usertable
(firstName, lastName, streetAddress, city, state, zip, country, email, phone, badgeName)
VALUES ('$firstName', '$lastName', '$streetAddress', '$city', '$state', '$zip', '$country', '$email', '$phone', '$badgeName')";
//then you'll need to execute the query :)
mysql_query($sql);
?>