
26/10/2012, 17:16
|
| | Fecha de Ingreso: agosto-2012 Ubicación: vigo
Mensajes: 84
Antigüedad: 12 años, 7 meses Puntos: 0 | |
Respuesta: update vs mysql_num_rows Perdona por no contestarte antes pero no podia. Yo agradezco tu opinion y tu trabajo pero lo que no es valido no hacer mencion nunca a a persona que te ayuda con sus planteamientos. No tiene sentido copiar y pegar sin antes preguntarte que estas haciendo.
Solo te quiero hacer una pregunta antes d probar tu codigo .
No se pasan estas variables despues de <?php ?, es decir, no quedaria asi.....
<?php $nombre = $_REQUEST['nombre'];
$apellidos = $_REQUEST['apellidos'];
$preferencias = $_REQUEST['preferencias'];
$conexion = mysqli_connect($host,$user,$pass,$db);
if (mysql_connect_error()) {
die('Error en la conexión: '.mysqli_connect_error());
}
//preparamos la sentencia SQL, ojo que no eh indicado los valores nuevos ni el valor para el where, esto lo dejamos para despues
$sql = 'UPDATE agenda SET apellidos = ?, preferencias = ?, WHERE nombre = ?';
//ahora le decimos a mysqli que prepare la sentencia SQL anterior para pasarle los valores necesarios
$query = mysqli_prepare($conexion,$sql);
/**
* ahora le indicamos a mysqli los valores, primero le pasamos la sentencia preparada, luego el tipo de dato que se va a entregar
* para saber el tipo de dato es:
* s: el tipo es string
* i: el tipo es entero
* d: el tipo es double
* b: el tipo es blob y se envia en paquetes
* como las tres variables son string indicamos 3 s (sss), cada letra es por cada variable, si tubieramos 3 variables string y 2 enteros o int
* seria sssii...
*/
mysqli_stmt_bind_param($query, 'sss', $_POST['apellidos'], $_POST['preferencias'], $_POST['nombre']);
//ejecutamos la sentencia SQL
mysqli_stmt_execute($query);
//verificamos cuantos registros fueron afectados
if (mysqli_stmt_affected_rows($query) != 0) {
echo '<p>Tiene permisos</p>';
}else {
echo '<p>No tiene permisos</p>';
}
mysqli_stmt_close($query);
mysqli_close($conexion);
Si que hay diferencia; muchas gracias Nemutagk |