La idea es la sig. Tengo una base de datos con 4 campos:
- id
- usuario
- contrasena
- formulario_upload (contiene unos 1,200 caracteres de puro HTML)
Pero no me sale. He hecho pruebas y veo que si reduzco el HTML a unos 30 ó 40 caracteres, la cosa funciona bien.
Código PHP:
$usuario = $_POST["usuario"];
$contrasena = $_POST["contrasena"];
$query = "SELECT * FROM usuarios";
$respuesta = new stdClass();
$mysqli = new mysqli("localhost", "root", "", "mi_base_de_datos");
if( (!empty($_POST["usuario"])) && (!empty($_POST["contrasena"])) )
{
if ( $resultado = $mysqli->query($query) ) {
while ($fila = $resultado->fetch_array(MYSQLI_ASSOC))
{
$user = $fila["usuario"];
$pass = $fila["contrasena"];
$forma = $fila["formulario_upload"];
if ( ($user == $usuario) && ($pass == $contrasena) ) {
$respuesta->mensaje = $forma; // Si en vez de $forma ponemos $user o $pass, se inyecta bien el valor de éstos.
break;
}
else {
$respuesta->mensaje = 'El usuario y contraseña introducidos son incorrectos.';
}
}
}
}
echo json_encode($respuesta);
mysqli_close($mysqli);
Nota: El campo formulario_upload es VARCHAR con cotejamiento utf8_general_ci, y con longitud de hasta 2,000 caracteres (le puse así por si acaso me quedaba corto).
¿Alguna idea de por qué no se inyecta el valor de dicho campo?
Saludos!