Foros del Web » Programando para Internet » PHP »

como muestro un nuevo codigo o traigo uno antiguo

Estas en el tema de como muestro un nuevo codigo o traigo uno antiguo en el foro de PHP en Foros del Web. hola: tengo un problema se que el codigo no esta bueno, porque me trae otra cosa . Código PHP: <tr>    <?  $rut_usuario  =  $_POST ...
  #1 (permalink)  
Antiguo 10/12/2008, 09:49
 
Fecha de Ingreso: noviembre-2008
Mensajes: 23
Antigüedad: 15 años, 5 meses
Puntos: 0
Sonrisa como muestro un nuevo codigo o traigo uno antiguo

hola:

tengo un problema se que el codigo no esta bueno, porque me trae otra cosa
.
Código PHP:
<tr> 
 <?
 $rut_usuario 
$_POST['rut'];
 
$consulta=mysql_query("select boleta.cod_boleta, usuario.rut from boleta, usuario where rut=$rut_usuario");
 
$resultado=mysql_fetch_array($consulta);
 
$boleta =$resultado['cod_boleta'];

$cod_boleta='0';
    if(
$cod_boleta==''){
        echo
"<td class='letra'>Codigo de Boleta:</td>
        <td ><input id='cb' maxlength=4 
        onFocus='this.value=document.getElementById('r').value.substring(4)' class='caja' size='20' name='cod_boleta'></td>
        </tr>"
;
        
}else{
echo
"
<td class='letra'>Codigo de Boleta:</td>
        <td ><input id='cb' maxlength=4 value='$boleta' class='caja' size='20' name='cod_boleta'></td>
        </tr>"
;
        }
        
?>

quiero:

1. crear un cod_boleta
2. verificar si ese cod_boleta segun el rut del usuario ya esta
3. si esta entonces lo trae de la base de datos
4. si no existe entonces que lo cree segun los cuatro ultimos dihitos del rut.

si ingreso otra vez daros para el mismo rut me dice duplicate entry por el tema del cod_boleta.

espero que ayuden, si no entienden me avisan y se los detallo mas.

apreciaria mucho su ayuda.
  #2 (permalink)  
Antiguo 10/12/2008, 10:57
Avatar de stone_neo  
Fecha de Ingreso: abril-2004
Ubicación: Peru
Mensajes: 438
Antigüedad: 20 años
Puntos: 15
Respuesta: como muestro un nuevo codigo o traigo uno antiguo

Tienes razón tu código no es muy bueno, como recomendación no mezcles la parte de base de datos con HTML, haslo en archivos separados.

Ahora no entiendo algunas cosas:

Cita:
2. verificar si ese cod_boleta segun el rut del usuario ya esta
Quieres comprobar un codigo de boleta si ya existe en un usuario, pero donde creas el codigo de boleta que vas a comprobar, nunca lo haces o no lo pasas por POST, y en tu select no lo usas para comprobar, ese select lo que hace es sacarte todas las boletas para ese rut y te va a salir un producto cartesiano ya que nunca haces el join de las dos tablas de las que haces select.

Ahora mas abajo le pones al $cod_boleta ='0' y luego preguntas si $cod_bolet==' ', demas esta decirte que nunca va a entrar a ese if.

Tendrias que hacer un select mas o menos asi:

select 1
from boleta b, usuario u where u.rut = $rut and b.cod_boleta=$boleta and
b.id_usuario = u.id_usuario

Si te devuelve 1 registro quiere decir que no existe esa boleta y si te devuelve 0 registros pues no existe y solo ahi lo insertas en la base de datos.
__________________
Rubén Darío Huamaní Ucharima
Web : http://www.gorilla-soft.com
Usuario Linux #382 100 :-)
  #3 (permalink)  
Antiguo 10/12/2008, 18:08
 
Fecha de Ingreso: noviembre-2008
Mensajes: 23
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: como muestro un nuevo codigo o traigo uno antiguo

gracias voy a probar
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 08:46.