Я хотел бы, чтобы пользователь заполнил форму, и эта информация была отправлена в базу данных. Я использую html и php в dreamweaver и WAM с phpMyAdmin.
Я пробовал все, и мне не удается заставить мой .php-файл работать с моим тестовым сервером localhost (или любым другим сервером, если на то пошло). Это регистрационная форма, и есть документ html и документ php, я включу оба:
HTML-форма:
<table width="15px" border="0">
<form form action="localhost.php" method="POST">
<tr>
<td>Username</td>
<td><input type="text" name="username" /></td>
</tr>
<tr>
<td>Skype Name</td>
<td><input type="text" name="skype" /></td>
</tr>
<tr>
<td>Email</td>
<td><input type="text" name="email" /></td>
</tr>
<tr>
<td>Password</td>
<td><input type="password" name="pass" /></td>
</tr>
<tr>
<td>Retype Password</td>
<td><input type="password" name="repass" /></td>
</tr>
<tr>
<td><input type="submit" name="submit" value="Submit"/></td>
</tr>
</form>
PHP File:
<?php
$hostname= "localhost";
$database = "boost";
$username = "root";
$password = "";
$localhost = mysqli_connect($hostname, $username, $password, $database);
if(mysqli_connect_errno())
{
die('Connection Failed'.mysqli_error());
}
?>
<html>
<head>
<title>Sign Up</title>
</head>
<body>
<?php
if(isset($_POST['Submit']))
{
$username=$_Post['username'];
$skype=$_Post['skype'];
$email=$_Post['email'];
$pass=$_Post['pass'];
$repass=$_Post['repass'];
if(empty($username) || empty($skype) || empty($email) || empty($pass) || empty($repass))
{
echo "Cannot leave any field blank";
}
elseif ($pass!=$repass)
{
echo "Passwords did not match! Please try again.";
}
else
{
$sql="INSERT INTO users(Username,SkypeID,Email,Password) " .
"VALUES ('$username','$skype','$email','$pass')";
$res=mysqli_query($localhost,$sql);
if(!$res)
{
die("Query Failed" .mysqli_error($localhost));
}
else
{
echo "Welcome";
}
}
}
Когда я ввожу данные в поля для проверки, данные не отправляются на локальный сервер (или тот, который подключен к WAM). Я не знаю, что я делаю неправильно здесь. Мои документы HTML и PHP не связаны между собой для обмена значениями? Что-то не так с кодом? Я неправильно определяю свою базу данных?
РЕШЕНИЕ: Мои «POST» и «submit» не обрабатываются как чувствительные к регистру. Спасибо за помощь.
name
вашей кнопки отправки — это отправить (все строчные буквы), но вы проверяете$_POST['Submit']
(прописная буква S). Кроме того, данные POST находятся в$_POST
, а не$_Post
. Голосую за закрытие как простую опечатку - person Phil   schedule 10.11.2015