我的問題是,當我將數據輸入到我的html表單並單擊提交時,它會調用我的php文件,但它不會發送參數。HTML表單不會將變量發送到PHP/MySQL
我甚至嘗試使用工作代碼來測試它,甚至工作代碼不通過變量。我不確定爲什麼這樣做,壞的PHP安裝?不知道。
這是它,如果你想看看它是否至少適合你。但我沒有得到任何傳遞到我的PHP文件中的變量。謝謝您的幫助。
<html>
<head>
<title>Home</title>
</head>
<body>
<form method="get" action="reg.php">
Firstname: <input type="text" name="firstname">
Lastname: <input type="text" name="lastname">
Age: <input type="text" name="age">
<input type="submit" value="Submit">
</form>
</body>
</html>
這裏是php文件:
<?php
echo $_SERVER['REQUEST_METHOD'];
if(isset($_GET['firstname'])){
$firstname = $_GET['firstname'];
}
else{
$firstname = 'null';
}
if(isset($_GET['lastname'])){
$lastname = $_GET['lastname'];
}
else{
$lastname = 'null';
}
if(isset($_GET['age'])){
$age = $_GET['age'];
}
else{
$age = 'null';
}
$con = mysqli_connect("127.0.0.1","root","", "my_db");
$sql="INSERT INTO persons (FirstName, LastName, Age)
VALUES
('$firstname','$lastname','$age')";
$result = mysqli_query($con, $sql);
if ($result)
{
echo "1 record added";
}
else{
echo "Did not work";
}
error_reporting(E_ALL);
mysqli_close($con);
?>
當我看到錯誤報告,它說未定義指數每一次,每件工作我測試代碼。我測試了4個工作代碼文件,但都沒有工作,但被證明他們做到了。我開始認爲我有一個不好的PHP安裝或更深入的問題。再次感謝。
'$ _GET'的輸出是什麼?做一個'var_dump($ _ GET)'。 – mcryan 2013-02-25 13:10:53
你很容易受到[SQL注入攻擊](http://bobby-tables.com/)**,並且應該學會如何[防禦](http://stackoverflow.com/questions/60174/best-way -to-prevent-sql -injection-in-php)你自己。 – Quentin 2013-02-25 13:10:56
它表示未定義索引處於打開狀態?另外,通過將變量聲明爲空,您可以大大減少代碼行數 – bizzehdee 2013-02-25 13:11:55