Я пытаюсь записать что-то в БД с помощью PHP, но если я пытаюсь использовать mysql_real_escape_string (), я не получаю никаких ошибок, но ничего не сохраняется в БД, и я не знаю почему = / особенно потому, что я сделал то же самое с другим файлом PHP, и он работал отлично ...
<?php
if(isset($_POST['reporte']))
$falla = $_POST['reporte'];
else
$falla = "";
if(!isset($falla)){
echo '<font color="red">Intentó enviar una forma vacía. Por favor intente de nuevo.</font>';
}else{
$fecha = mysql_real_escape_string(stripslashes($_POST['fecha']));
$usuario = mysql_real_escape_string(stripslashes($_POST['usuario']));
connection...
$sql = "INSERT INTO $tbl_name(usuario, comentario, fecha, estado) VALUES('$usuario','$falla','$fecha', '0')" or die('mysql_error()');
теперь я не проверяю, являются ли "fecha" или "usuario" пустыми, поскольку они отправляются через скрытое поле в форме.
Редактировать
Я переключился, ошибки все еще нет, и в базу данных ничего не попало = / Я смотрю документацию, но я озадачен, потому что я сделал это раньше точно таким же образом, и это сработало ... ха-ха ...
Редактировать 2
Да, у меня есть
mysql_query($sql) or die('Error SQL !'.$sql.'<br>'.mysql_error());
Да, я установил $ tbl_name вместе с соединением в:
$host="localhost";
$username="user";
$password="pass";
$db_name="cosa";
$tbl_name="reportes";
и я сделал проверку на мониторе базы данных и распечатал его ... он возвращает ОК ... однако, что вы подразумеваете под "очисткой" $ falla? Я узнаю инъекцию, но я совсем новичок в php.
Редактировать 3
Я использую die только для тестирования, однако ошибки не отображаются, он работает гладко, просто не вставит ничего, если я использую "mysql_real_escape_string ()"
Редактировать 4
Это мой текущий код:
<?php
if(isset($_POST['reporte']))
$falla = $_POST['reporte'];
else
$falla = "";
if(!isset($falla)){
echo '<font color="red">Intentó enviar una forma vacía. Por favor intente de nuevo.</font>';
}else{
$host="localhost"; // Host name
$username="user"; // Mysql username
$password="pass"; // Mysql password
$db_name="cosa"; // Database name
$tbl_name="reportes"; // Table name
// To protect MySQL injection
$fecha = mysql_real_escape_string(stripslashes($_POST['fecha']));
$usuario = mysql_real_escape_string(stripslashes($_POST['usuario']));
$falla = mysql_real_escape_string(stripslashes($falla));
$db = mysql_connect($host, $username, $password) or die('Cannot Connect '.mysql_error());
mysql_select_db($db_name) or die('Cannot select DB '.mysql_error());
$sql = "INSERT INTO $tbl_name(usuario, comentario, fecha, estado) VALUES('$usuario','$falla','$fecha', '0')" or die('mysql_error()');
mysql_query($sql) or die('Error SQL !'.$sql.'<br>'.mysql_error());
header("location:../../user/usuario.php");
mysql_close();
}
?>
Это полный, и также измененный в соответствии с рекомендациями, которые я получил здесь ... все еще не получая ничего в БД ...