Foros del Web » Programando para Internet » PHP »

¿Qué falla en este php (simple)?

Estas en el tema de ¿Qué falla en este php (simple)? en el foro de PHP en Foros del Web. Hola tengo este código php: Código PHP: <?php        require( 'conexion.php' );        $busqueda  =  $_GET [ search ];        $cbusqueda = mysql_num_rows ( mysql_query ...
  #1 (permalink)  
Antiguo 06/05/2012, 11:43
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Exclamación ¿Qué falla en este php (simple)?

Hola tengo este código php:
Código PHP:
<?php
      
require('conexion.php');
      
$busqueda $_GET[search];
      
$cbusqueda=mysql_num_rows(mysql_query("select * from busquedas where busqueda = '$busqueda'"$con));
      if(
$cbusqueda == 0){
         
$inserta=mysql_query("insert into busquedas values('NULL', '$busqueda', '1')"$con); 
      }else{
          
$upnum=mysql_query("update busquedas set numero = numero + 1 where busqueda = '$busqueda'"$con);
      }
      
?>
Supuestamente, si $busqueda se encontrara en la tabla se sumaría 1 a la columna "numero" y si no existiera se crearía una nueva fila con "numero" 1.

Sin embargo, si no existe se añade una fila con "numero" 2 y si existe se le suma 2 a número...

¡¿Por qué ocurre esto?!

Gracias por sus repuestas!
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #2 (permalink)  
Antiguo 06/05/2012, 12:02
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: ¿Qué falla en este php (simple)?

funciona tu insert?

Cita:
insert into busquedas values('NULL', '$busqueda', '1')
no es asia ?
Cita:
insert into busquedas (campo1,campo2,campo3)values('NULL', '$busqueda', '1')
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #3 (permalink)  
Antiguo 06/05/2012, 12:05
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: ¿Qué falla en este php (simple)?

Si, si, el insert siempre me funcionó así (sin especificar los campos).
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #4 (permalink)  
Antiguo 06/05/2012, 12:12
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: ¿Qué falla en este php (simple)?

no veo el error,prueba especificando los campos , cuantos registros tienes en tu tabla busquedas
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #5 (permalink)  
Antiguo 06/05/2012, 12:20
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: ¿Qué falla en este php (simple)?

Tengo 3 campos y me pasa una cosa mucho más curiosa aun:

Si cojo el php y lo pego en una página en blanco... lo pruebo y sí funciona!

Esto es muy extraño... :(
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #6 (permalink)  
Antiguo 06/05/2012, 12:26
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: ¿Qué falla en este php (simple)?

separa las consultas de la ejecucion imprime la consulta y un exit; para ver que hacen
Cita:
$sql="insert into busquedas values('NULL', '$busqueda', '1')";
$inserta=mysql_query($sql, $con);
echo $sql;exit;
Cita:
$sql="update busquedas set numero = numero + 1 where busqueda = '$busqueda'";
$upnum=mysql_query($sql, $con);
echo $sql;exit;
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #7 (permalink)  
Antiguo 06/05/2012, 13:05
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: ¿Qué falla en este php (simple)?

Así muestra lo que debería de hacer correctamente.
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #8 (permalink)  
Antiguo 06/05/2012, 13:12
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: ¿Qué falla en este php (simple)?

Si interrumpo la carga de la página con el exit si funciona (claro que no carga entonces el resto de la page)
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #9 (permalink)  
Antiguo 06/05/2012, 13:29
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: ¿Qué falla en este php (simple)?

entonces, algo esta recargando tu pagina y no es que lo inserte en dos sino que hace un update +1 nuevamente al que acabas de insertar..

cual es tu codigo completo? es my extenso?
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #10 (permalink)  
Antiguo 06/05/2012, 13:32
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: ¿Qué falla en este php (simple)?

mira coloca esto en tus sentencias

Cita:
if($cbusqueda == 0){

$inserta=mysql_query("insert into busquedas values('NULL', '$busqueda', '1')", $con);
?><script languaje="javascript">alert('inserto nuevo')</script><?php
}else{
$upnum=mysql_query("update busquedas set numero = numero + 1 where busqueda = '$busqueda'", $con);
?><script languaje="javascript">alert('modifico existente')</script><?php
}
usando un poco de javascript pueds ver el progreso de tu pagina
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #11 (permalink)  
Antiguo 06/05/2012, 14:25
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: ¿Qué falla en este php (simple)?

Pues son 694 líneas de código.
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #12 (permalink)  
Antiguo 06/05/2012, 14:28
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: ¿Qué falla en este php (simple)?

y... ¿qué puede ser lo que hace que se ejecute la sentencia 2 veces?
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!
  #13 (permalink)  
Antiguo 06/05/2012, 14:40
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: ¿Qué falla en este php (simple)?

hiciste la prueba con el javascript? y si te muesta dos veces un alert?

pues , si es bastante ,podrias ir comentando lo que creas e ir probando donde es la linea que recarga la pagina..

o irte de 10 en 10 lineas por linea escribiendo exit; aver cual la recargar
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #14 (permalink)  
Antiguo 07/05/2012, 08:16
 
Fecha de Ingreso: abril-2011
Mensajes: 169
Antigüedad: 13 años
Puntos: 4
Respuesta: ¿Qué falla en este php (simple)?

Pues no, el javascript no muestra dos veces el alert...
__________________
MiniMonigotes.com | Juegos flash online gratis - ¡Entra ya!

Etiquetas: error+mysql, error+php, mysql
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 18:14.