Foros del Web » Programando para Internet » PHP »

Varios AND en una consulta. Se puede?

Estas en el tema de Varios AND en una consulta. Se puede? en el foro de PHP en Foros del Web. Buena tarde a todos. Ojala puedan apoyarme. Mi pregunta es.. se pueden colocar varios And en una consulta? Quiza si les explico que quiero hacer, ...
  #1 (permalink)  
Antiguo 09/07/2012, 16:47
 
Fecha de Ingreso: junio-2011
Ubicación: Irapuato
Mensajes: 13
Antigüedad: 13 años, 5 meses
Puntos: 0
Varios AND en una consulta. Se puede?

Buena tarde a todos. Ojala puedan apoyarme.

Mi pregunta es.. se pueden colocar varios And en una consulta?

Quiza si les explico que quiero hacer, sea más facil.

Tengo un formulario en el cual tengo que insertar "Nombre de usuario", "No. de Cliente" y su "contraseña".

Al hcaer click en estos datos, yo requiero que si falta uno de esos 3 datos, no me deje accesar. Pero si los 3 datos son correctos, me deje ingresar a una página.

Tengo el siguiente código pero no se si sea el correcto. Estoy manejando sesiones. Todo pareciera que funciona bien, pero en la consulta es donde nada mas no funciona.

<?php
session_start();
include('acceso_db.php');
if(isset($_POST['enviar'])) { // comprobamos que se hayan enviado los datos del formulario
// comprobamos que los campos usuarios_nombre y usuario_clave no estén vacíos
if(empty($_POST['usuario_nombre']) || empty($_POST['usuario_clave']) || empty($_POST['usuario_cliente'])) {
echo "El RFC, el numero de cliente o la contraseña no han sido ingresados. <a href='javascript:history.back();'>Reintentar</a>";
}else {
// "limpiamos" los campos del formulario de posibles códigos maliciosos
$usuario_nombre = mysql_real_escape_string($_POST['usuario_nombre']);
$usuario_cliente = mysql_real_escape_string($_POST['usuario_cliente']);
$usuario_clave = mysql_real_escape_string($_POST['usuario_clave']);
$usuario_clave = md5($usuario_clave);
// comprobamos que los datos ingresados en el formulario coincidan con los de la BD
$sql = mysql_query("SELECT usuario_id, usuario_nombre, usuario_cliente, usuario_clave FROM usuarios WHERE usuario_nombre='".$usuario_nombre."' AND (usuario_cliente='".$usuario_cliente."' AND usuario_clave='".$usuario_clave."')");
if($row = mysql_fetch_array($sql)) {
$_SESSION['usuario_id'] = $row['usuario_id']; // creamos la sesion "usuario_id" y le asignamos como valor el campo usuario_id
$_SESSION['usuario_nombre'] = $row["usuario_nombre"]; // creamos la sesion "usuario_nombre" y le asignamos como valor el campo usuario_nombre
$_SESSION['usuario_cliente'] = $row["usuario_cliente"]; // creamos la sesion "usuario_cliente" y le asignamos como valor el campo usuario_cliente
header("Location: perfil.php");
}else {
?>
Error, <a href="acceso.php">Reintentar</a>
<?php
}
}
}else {
header("Location: rssmcabuyorders.php");
}
?>

Alguien podría ayudarme? Agradezco su apoyo. Saludos.
  #2 (permalink)  
Antiguo 09/07/2012, 16:50
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
Respuesta: Varios AND en una consulta. Se puede?

Tu "idea" esta bien, solo que la estas implementando mal, no necesitas indicar los "AND" dentro de parentesis, colocalos todos en una sola linea...

Código PHP:
Ver original
  1. $sql = mysql_query("SELECT usuario_id, usuario_nombre, usuario_cliente, usuario_clave FROM usuarios WHERE usuario_nombre='".$usuario_nombre."' AND usuario_cliente='".$usuario_cliente."' AND usuario_clave='".$usuario_clave."'");

PD: y por favor, recuerda usar highlight para mostrar el código!!!, así es una pesadilla leerlo...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)

Etiquetas: formulario, mysql, sql, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:25.