簡體   English   中英

PHP用表格注冊,數據輸入數據庫

[英]PHP sign up with form, data entered into database

我有我的網站的管理員部分,並希望具有允許管理員注冊然后能夠登錄的功能。 現在我正在處理注冊表單。 當我提交用戶名和密碼時,Web瀏覽器只顯示一個空白屏幕,並且沒有任何內容添加到我的數據庫中。 這是我的代碼。 任何想法為什么會這樣,而不是工作?

<?
$con = mysql_connect("localhost", "root", "");
if(!$con)
    {
    die('Could not connect: ' .mysql_error());
    }
mysql_select_db("bics_place", $con);

$myusername=$_POST['myusername']; 
$mypassword=$_POST['mypassword']; 
$encrypted_mypassword=md5($mypassword);

$sql = "INSERT INTO admin
            (username, password)
            VALUES
            ('myusername','encrypted_mypassword')";

if(!mysql_query($sql, $con))
    {
    die('Error: ' .mysql_Error());
    }
echo "1 record added";

mysql_close($con);

?>

我在本地測試了你的代碼,它有效。 要檢查幾件事。

您的服務器可能未配置為允許短標簽。 嘗試更改'<?' 在第1行到'<?php'

如果你必須使用短標簽(你正在使用其他人使用它們的代碼),你需要編輯你的php.ini文件以允許它。 出於兼容性原因,我傾向於避開它們。

short_open_tag=On

如果這不能解決您的問題,請添加error_reporting(E_ALL); 到文件的開頭,它應該顯示錯誤。 一旦代碼正常工作,請將其刪除。

此外,您還需要編輯$ sql變量。 將$放在變量名前面。

$sql = "INSERT INTO admin
        (username, password)
        VALUES
        ('$myusername','$encrypted_mypassword')";

否則,您的服務器錯誤日志會告訴您什么?

不確定為什么你不會看到任何錯誤,但你的SQL不正確。

你有:

$sql = "INSERT INTO admin (username, password) VALUES ('myusername','encrypted_mypassword')";

應該是:

$sql = "INSERT INTO admin (username, password) VALUES ('$myusername','$encrypted_mypassword')";

你錯過了變量前面的$

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM