У меня есть небольшая проблема с моим Update запросом к chnage профилей InfosPHP - MYSQL Update Query не работает полный
Проблема теперь:
- Мой Update Query не работает укомплектовать, Е -Mail query, но запрос статуса не работает.
PHP КОД
if(!empty($_POST)) {
$query = "UPDATE users SET";
if(!empty($_POST['email']) && filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) && $_POST['email'] != $_SESSION['u']['email']) {
$s_mail = $_POST['email'];
$row = mysql_num_rows(mysql_query("SELECT email FROM users WHERE email='$s_mail'"));
if($row != 0) {
header("Location: ".$l['settings']."?msg=2");
die("REDIRECT");
}
$query .= " `email`='".$_POST['email']."'";
$_SESSION['u']['email'] = $_POST['email'];
} else if(!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
header("Location: ".$l['settings']."?msg=3");
die("REDIRECT");
}
//PROBLEM starts here
if(!empty($_POST['status'])) {
$query .= ",`status`='".$_POST['status']."'";
$_SESSION['u']['status'] = $_POST['status'];
}
//AND ends here
$query .= " WHERE id='".$_SESSION['u']['id']."'";
mysql_query($query);
header("Location: ".$l['settings']."?msg=1");
die("REDIRECT");
}
HTML FORM
<input maxlength="200" type="text" class="form-control" placeholder="Status" name="status" value="<?php //ECHO STATUS ?>" />
Может быть кто-то может мне помочь.
Если вы планируете, чтобы не доверенные люди имели к нему доступ (например, помещая его в Интернет), взгляните на всегда соответствующий вопрос о [SQL-injection Prevention] (https: // stackoverflow. ком/вопросы/60174 /, как-может-я-предотвращать-SQL-инъекции-в-PHP). Впоследствии это может сэкономить вам массу неприятностей. – tarleb