Foros del Web » Programando para Internet » PHP »

PHP OO consultar dos campos de una db

Estas en el tema de consultar dos campos de una db en el foro de PHP en Foros del Web. Hola que tal amigos, soy nuevo en la comunidad, queria saber si me pueden dar una mano, estoy haciendo un sistema de turnos, donde tengo ...
  #1 (permalink)  
Antiguo 01/05/2014, 15:22
 
Fecha de Ingreso: mayo-2014
Ubicación: Pehuajo
Mensajes: 10
Antigüedad: 9 años, 11 meses
Puntos: 0
Pregunta consultar dos campos de una db

Hola que tal amigos, soy nuevo en la comunidad, queria saber si me pueden dar una mano, estoy haciendo un sistema de turnos, donde tengo un formulario que ingresa el nombre,apellido,dia y hora, yo lo que necesito hacer es verificar que ese dia y hora no haya sido cargado antes en la bd, les dejo mi formulario y la parte php.
PARTE PHP
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<!-- Select's -->
<script type="text/javascript" src="/theme/js/jQuery.js"></script>
<!-- Slide -->
<script type="text/javascript" src="/theme/slide/slide.js"></script>
<script type="text/javascript" src="/theme/js/funciones.js"></script>
<!-- ************** Menu ********************************-->
<script type="text/javascript" src="/theme/js/hoverIntent.js"></script>
<script type="text/javascript" src="/theme/js/superfish.js"></script>
</head>

<body>
<?php

// Primero comprobamos que ningún campo esté vacío y que todos los campos existan.
if(isset($_POST['datepicker']) && !empty($_POST['datepicker']) &&
isset($_POST['hora']) && !empty($_POST['hora'])&& isset($_POST['nombre']) && !empty($_POST['nombre']) && isset($_POST['apellido']) && !empty($_POST['apellido'])) {$nuevo_turno=mysql_query("select dia from $turnos where dia='$datepicker'");
$verhora=mysql_query("select hora from $turnos where hora='$hora'");
if(mysql_num_rows($nuevo_turno)>0)
{ if(mysql_num_rows($verhora)>0)
{
echo ("El turno se encuentra asignado");

}
else {echo ("Turno disponible");}
}
// ------------ Si no esta registrado el usuario continua el script


// ==============================================
// Comprobamos si el email esta registrado

// ------------ Si no esta registrado el e-mail continua el script
else {

// Si entramos es que todo se ha realizado correctamente
$nombre = $_POST["nombre"];
$apellido = $_POST["apellido"];
$hora = $_POST["hora"];
$datepicker = $_POST["datepicker"];
$link = mysql_connect("127.0.0.1","damian","1235");
mysql_select_db("damian",$link);



// Con esta sentencia SQL insertaremos los datos en la base de datos
mysql_query("INSERT INTO turnos (nombre,apellido,dia,hora)
VALUES ('{$_POST['nombre']}','{$_POST['apellido']}','{$_POST['datepicker']}','{$_POST['hora']}')",$link);
}

// Ahora comprobaremos que todo ha ido correctamente
$my_error = mysql_error($link);

if(!empty($my_error)) {

echo "Ha habido un error al insertar los valores. $my_error";

} else {

echo "Los datos han sido introducidos satisfactoriamente";
}
}

?>
</body>
</html>
ACÀ EL FORMULARIO
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script>
<script type="text/javascript">
jQuery(function($){
$.datepicker.regional['es'] = {
closeText: 'Cerrar',
prevText: '&#x3c;Ant',
nextText: 'Sig&#x3e;',
currentText: 'Hoy',
monthNames: ['Enero','Febrero','Marzo','Abril','Mayo','Junio',
'Julio','Agosto','Septiembre','Octubre','Noviembre ','Diciembre'],
monthNamesShort: ['Ene','Feb','Mar','Abr','May','Jun',
'Jul','Ago','Sep','Oct','Nov','Dic'],
dayNames: ['Domingo','Lunes','Martes','Mi&eacute;rcoles','Jue ves','Viernes','S&aacute;bado'],
dayNamesShort: ['Dom','Lun','Mar','Mi&eacute;','Juv','Vie','S&aacu te;b'],
dayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','S&aacute;'],
weekHeader: 'Sm',
dateFormat: 'dd/mm/yy',
firstDay: 1,
isRTL: false,
showMonthAfterYear: false,
yearSuffix: ''};
$.datepicker.setDefaults($.datepicker.regional['es']);
});

$(document).ready(function() {
$("#datepicker").datepicker();
});
</script>

<!--*********** cambio de hojas de estilo ***************-->
<link rel="stylesheet" href="../css/reset.css" type="text/css" />
<!-- ************** Menu ********************************-->
<link rel="stylesheet" type="text/css" href="../css/style.css" />
<link rel="stylesheet" href="../css/reset.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="css/default.css" />
<link rel="stylesheet" type="text/css" href="css/jquery-ui-1.7.2.custom.css" />
<!-- ************** Menu ********************************-->
<link rel="stylesheet" type="text/css" href="../css/style.css" />

<!-- Select's -->
<script type="text/javascript" src="/theme/js/jQuery.js"></script>
<!-- Slide -->
<script type="text/javascript" src="/theme/slide/slide.js"></script>
<script type="text/javascript" src="/theme/js/funciones.js"></script>
<!-- ************** Menu ********************************-->
<script type="text/javascript" src="/theme/js/hoverIntent.js"></script>
<script type="text/javascript" src="/theme/js/superfish.js"></script>
</head>

<body>

<form id="reg-us" name="usuarios" action="agregando.php" method="post">
<fieldset>
<legend>Asignar turno..</legend>

<p><label>Nombre</label>
<input type="text" name="nombre" id="nombre" />
</p>
<p><label>Apellido</label>
<input type="text" name="apellido" id="apellido" />
</p>
<p><label>Horario del turno:</label>
<input type="time" name="hora" id="hora" value="00:00:00">
</p>

<p><label>Dia</label>
<input type="text" name="datepicker" id="datepicker" readonly="readonly" size="12" />
</p>




<p><input class="botones" type="submit" name="acc" value="Dar turno" size="20">
<input class="botones" name="Restablecer" type="reset" value="Limpiar" /></p>
</fieldset>
</form>
</body>
</html>
  #2 (permalink)  
Antiguo 02/05/2014, 01:22
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: consultar dos campos de una db

Deberías indicarnos lo que necesitas, o pretendes que instalemos tu codigo y descubramos cual es el funcionamiento erroneo?

A y por favor usa el Highlight ayuda a leer el codigo

Código PHP:
Ver original
  1. <?php
  2.    //Esto es php
  3. ?>

Código HTML:
Ver original
  1. //Esto es <strong>HTML</strong>
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 02/05/2014, 03:06
 
Fecha de Ingreso: noviembre-2010
Ubicación: Córdoba
Mensajes: 119
Antigüedad: 13 años, 4 meses
Puntos: 8
Respuesta: consultar dos campos de una db

La cosa es que aquí ayudamos a la gente, o al menos lo intentamos, yo en concreto cuando puedo. Pero de ahí, a ponernos tooooooooodo el código y ala!, ahí tenéis!, hacédmelo y ya luego me hago un copy&paste a mi aplicación, pues no.
  #4 (permalink)  
Antiguo 02/05/2014, 07:53
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 16 años, 1 mes
Puntos: 96
Respuesta: consultar dos campos de una db

Esto no es un problema de php si no de sql,
Código MySQL:
Ver original
  1. select dia, hora from $turno where dia=$datapicker and hora=$hora
Aunque si hay un error de php, es que la conexion a la bd la haces despues de una consulta
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #5 (permalink)  
Antiguo 02/05/2014, 11:11
 
Fecha de Ingreso: mayo-2014
Ubicación: Pehuajo
Mensajes: 10
Antigüedad: 9 años, 11 meses
Puntos: 0
Respuesta: consultar dos campos de una db

gracias, lo solucione leyendo en internet xD, ahora tengo una duda como puedo hacer para modificar un dato y que ese nuevo dato lo compruebe de que no este cargado ya en la bd?? no se como hacer esas dos cosas juntas :S
  #6 (permalink)  
Antiguo 02/05/2014, 11:19
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: consultar dos campos de una db

https://dev.mysql.com/doc/refman/5.0...l-indexes.html

Especialmente lee sobre los indices unicos.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #7 (permalink)  
Antiguo 03/05/2014, 12:20
 
Fecha de Ingreso: mayo-2014
Ubicación: Pehuajo
Mensajes: 10
Antigüedad: 9 años, 11 meses
Puntos: 0
Respuesta: consultar dos campos de una db

Estoy probando hacer esto y me da error de "index" en la parte esta "$bus2ca=$_POST['nombre'];"

no se porque :S el campo "nombre" eso me marca error -.-
<?php
$bus2ca="";
$bus2ca=$_POST['nombre'];
mysql_connect("127.0.0.1","damian","12345f");
mysql_select_db("damian");
if($bus2ca!=""){
$busqueda=mysql_query("SELECT * FROM turnos WHERE nombre LIKE '%".$bus2ca."%'");//cambiar nombre de la tabla de busqueda
?>

<form name="form1" method="post" action="buscador.php" id="cdr" >


<input name="nombre" type="text" id="busqueda">
<input type="submit" name="Submit" value="buscar" />

</form>
  #8 (permalink)  
Antiguo 05/05/2014, 00:23
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: consultar dos campos de una db

El campo 'nombre' esta en $_POST

Código PHP:
Ver original
  1. echo "<pre>";
  2. print_r($_POST);
  3. echo "</pre>";

te mostrará que llega por post.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #9 (permalink)  
Antiguo 05/05/2014, 07:53
 
Fecha de Ingreso: mayo-2014
Ubicación: Pehuajo
Mensajes: 10
Antigüedad: 9 años, 11 meses
Puntos: 0
Respuesta: consultar dos campos de una db

si ahora anda no se que onda -.- estarìa bugueado el otro dia u.u , estoy tratando de poner que cuando la busqueda sea 0 (no encuentra resultados) muestre que no encontrò resultados pero no se si està bien asì:


if($bus2ca!=""){
$busqueda=mysql_query("SELECT * FROM turnos WHERE nombre LIKE '%".$bus2ca."%'");//cambiar nombre de la tabla de busqueda
if ($busqueda=="0")
{echo ("No se encontraron resultados");}

aunque esto no me anda e.e
  #10 (permalink)  
Antiguo 06/05/2014, 01:02
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: consultar dos campos de una db

"0" es un string y mysql_query retorna false si no hay registros

Código PHP:
Ver original
  1. if ($busqueda==0)

o
Código PHP:
Ver original
  1. if ($busqueda==false)

o

Código PHP:
Ver original
  1. if (!$busqueda)


Código PHP:
Ver original
  1. {
  2.   echo ("No se encontraron resultados");
  3. }else{
  4. //Aqui si hay datos
  5. }
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #11 (permalink)  
Antiguo 06/05/2014, 09:01
 
Fecha de Ingreso: mayo-2014
Ubicación: Pehuajo
Mensajes: 10
Antigüedad: 9 años, 11 meses
Puntos: 0
Respuesta: consultar dos campos de una db

Cita:
Iniciado por quimfv Ver Mensaje
"0" es un string y mysql_query retorna false si no hay registros

Código PHP:
Ver original
  1. if ($busqueda==0)

o
Código PHP:
Ver original
  1. if ($busqueda==false)

o

Código PHP:
Ver original
  1. if (!$busqueda)


Código PHP:
Ver original
  1. {
  2.   echo ("No se encontraron resultados");
  3. }else{
  4. //Aqui si hay datos
  5. }
Estuve probando con esas formas pero no me anda :S
if($bus2ca!=""){
$busqueda=mysql_query("SELECT * FROM turnos WHERE nombre LIKE '%".$bus2ca."%'");//cambiar nombre de la tabla de busqueda
if (!$busqueda) {echo ("No se encontraron resultados");};

Etiquetas: campos, consultar, formulario, html, mysql, select, 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 14:51.