что не так в этом коде ,, Идентификатор только поступает в базу данных, а еще 3 строки (адрес электронной почты, телефон, имя) пуст также я разрабатываю сценарий на моем ноутбуке, но когда я загружаю он на публике не все значения поступают в базу данных, в чем причина? извините за мой плохой английскийphp и mysqli код
<?php
$con=mysqli_connect("localhost","898515","5871209papy","898515db2");
if(isset($_POST['name'])){
$_POST['name']=$name;}
if(isset($_POST['email'])){
$_POST['email']=$email;}
if(isset($_POST['phone'])){
$_POST['phone']=$phone;}
$sql="INSERT INTO final (name,email,phone) VALUES ('$name','$email','$phone')";
mysqli_query($con,$sql);
?>
<html>
<head>
<title>REGISTER</title>
<style>
a{
text-decoration:none;
color:black;
}
a:visited{
color:black;
}
body{
background-color:grey;
}
</style>
</head>
<body>
<form action="" method="post">
<table>
<tr><td><b>Name:</b></td><td><input type="text" name="name"/></td></tr>
<tr><td><b>Phone:</b></td><td><input type="text" name="phone" /></td></td></tr>
<tr><td><b>Email:</b></td><td><input type="text" name="email"/></td></tr></br></br><br>
<tr><td></td><td><input type="submit" name="submit" value="Select flat >>>"/></td></tr>
</table>
</form>
<p style=" text-align:center;
">
</body>
</html>
Ваш 'mysqli_query ($ жулик, $ SQL);' бежится каждый раз, когда скрипт загружен, независимо от того, форма была отправлена или не. Кроме того, у вас есть переменные в неправильном порядке, это должно быть '$ phone = $ _POST ['phone'];' вместо '$ _POST ['phone'] = $ phone;'. (Вы назначаете '$ phone' суперглобальному' $ _POST ['phone'] ', который на самом деле вам не поможет). Кроме того, прочтите [Как предотвратить SQL-инъекцию в PHP?] (Http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php) (это очень важно для вашей базы данных-безопасности). – Qirel
спасибо alot ,, правильный sql запрос, если condidtion существует? если (состояние) { mysqli_query? } –
со всем, что работает @Qirel, вы должны были поставить это как ответ ;-) –