<?php
$host = "localhost";
$user = "root";
$pass = "pass";
$db = "table";
$connect=mysql_connect($host, $user, $pass) or die(mysql_error());
mysql_select_db($db, $connect) or die(mysql_error());
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
$username = trim($_POST["username"]);
$res = mysql_query("SELECT id, username, email, ip FROM users WHERE username='". mysql_real_escape_string($username) . "'");
$arr = mysql_fetch_assoc($res);
$user_id = $arr['id'];
$user_name = $arr['username'];
$user_email = $arr['email'];
$user_ip = $arr['ip'];
$res = mysql_query("UPDATE users SET enabled=no WHERE id=$user_id") or mysql_error();
}
?>
<form method="post" action="">
<input type="text" size="40" name="username">
<tr><td colspan="2"><input type="submit" class="btn" value='send'></td></tr>
</form>
Ce script n'exécute pas: $res = mysql_query("UPDATE users SET enabled=no WHERE id=$user_id") or mysql_error();
php mysql update
Qu'est-ce qui ne va pas?
Si la colonne id est un entier que vous n'avez pas besoin des guillemets simples autour user_id $ –
Je doute $ user_id cité unique ... êtes-vous sûr? – PHP
Vrai, mais c'est la meilleure pratique - si c'est entre guillemets et vous échappez à la variable, il peut empêcher l'injection SQL – fin1te