0

私は得続けます

サーバーエラーhttps://www.website.com/update.php?FName=asdd&PHONE=4444444444の取得中にWebサイトでエラーが発生しました。メンテナンスのためにダウンしているか、正しく構成されていない可能性があります。

<?php

    $FName = $_POST['FName'];
    $LName = $_POST['LName'];
    $PHON = $_POST['PHON'];

    //connect
    $dbh=mysql_connect ("localhost", "username", "password") or die ('ERROR!');
    mysql_select_db ("user_Client"); 

    $query = "INSERT INTO ClientTable (ID, FName, LName, PHON) VALUES 
                ('NULL','".$FName."','".$LName."','".$PHON."')";

    mysql_query($query) or die ('Error updating Daatabase');
    echo "Database Update with:" .$FName. " " .$LName. " " .$PHON. ;
?>

ここで何が問題なのかわかりません。私はここからの指示に従いましたhttp://teamtutorials.com/web-development-tutorials/php-tutorials/inserting-data-into-a-mysql-database-using-php#.UEiSQY3iajk それが助けになるなら-私はcPanelを使用していますJosthostから。

フォームは次のとおりです。

<html>
        <head>
                <title></title>
        </head>

        <body>
                <form method="post" action="update.php">
                        First Name:<br/>
                        <input type="text" name="FName" size="30" /><br/>
                        Last Name:<br/>
                        <input type="text" name="LName" size="30" /><br/>
                        Phone:<br/>
                        <input type="text" name="PHON" size="12" /><br/>
                        <input type="submit" value="Update Database"/>
                </form>
        </body>
</html>
4

5 に答える 5

2

機能が非推奨になっているPDOのでご利用ください..mysql_*

あなたの問題では、 では$_GETなく を使用し$_POST、変数のスペルを間違えています ( $FNLame):

$db = new PDO('mysql:host=localhost;dbname=user_Client;charset=UTF-8', 'username', 'password', array(PDO::ATTR_EMULATE_PREPARES => false, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));

$FName = $_GET['FName'];
$LName = $_GET['LName'];
$PHON = $_GET['PHON'];

$stmt = $db->prepare("INSERT INTO `ClientTable`(ID, FName, LName, PHON) VALUES (0,:FName,:LName,:PHON)");
$stmt->execute(array(':FName' => $FName, ':LName' => $LName, ':PHON' => $PHON));

echo "Database Update with:" .$FName. " " .$LName. " " .$PHON;
于 2012-09-06T12:45:40.660 に答える
1

あなたの最後の声明は間違っています:

echo "Database Update with:" .$FName. " " .$LName. " " .$PHON. ;

次のようにする必要があります (最後のドットなし):

echo "Database Update with:" .$FName. " " .$LName. " " .$PHON ;

Web サーバーのエラー ログを見ると、エラーを確認できます。php.iniもう 1 つのアイデアは、またはのいずれかで PHP のエラーをオンにすることini_set("display_errors", 1);です。ただし、開発システムでのみ行うようにしてください。

于 2012-09-06T12:43:34.077 に答える
1

あなたはチェック$_POST['PHON']していますが、クエリ文字列では渡しています

https://www.website.com/update.php?FName=asdd&PHONE=4444444444 .

まず PHONE を修正してください。次にチェック

そしてそれを次のように取得します

$_GET['PHONE']

また

$_REQUEST['PHONE']
于 2012-09-06T12:44:20.320 に答える
1

引用符 ( 'または"" )による sql エラーの可能性があります。これを回避するには、次のようなものを使用できます

    $FName = mysql_real_escape_string($_POST['FName']);
    $FNLame = mysql_real_escape_string($_POST['FLame']);
    $PHON = $_POST['PHON'];
于 2012-09-06T12:49:19.360 に答える
0

ユーザー名とパスワードは正しいですか?ほとんどの localhost のデフォルトは root であり、パスワードはありません

于 2012-09-06T12:47:15.703 に答える