Foros del Web » Programando para Internet » PHP »

problema con sentencia

Estas en el tema de problema con sentencia en el foro de PHP en Foros del Web. Hola gente, A ver si alguien me puede dar una mano. tengo este código: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original $fields = $_POST [ 'select' ...
  #1 (permalink)  
Antiguo 27/06/2012, 16:05
 
Fecha de Ingreso: agosto-2008
Ubicación: Miami, FL
Mensajes: 210
Antigüedad: 15 años, 7 meses
Puntos: 2
Pregunta problema con sentencia

Hola gente,
A ver si alguien me puede dar una mano.
tengo este código:

Código PHP:
Ver original
  1. $fields = $_POST['select'];
  2.  
  3. for($i=0;$i<count($fields);$i++)
  4. {
  5.    $consulta = "DELETE FROM main_data WHERE id_data = '$fields[$i]'";
  6.    $ejecutar=mysql_query($consulta) or die ("Error !!");
  7.  
  8.      echo "<script>alert('File deleted from Quotes History');
  9.                        location='". $_SERVER['HTTP_REFERER'] ."';                                              
  10.                    </script>";
  11.         }

Funciona muy bien pero le falta algo, y es que cuando se cumple la función esta bien y se ejecuta pero si no se cumple la pagina se queda en blanco. Por lo poco que se, me imagino que tendría que llevar un "if", es decir, if$consulta...bla bla bla, echo "tanto", else "otra cosa".
Pero aunque le doy vueltas y lo agrego de diferentes formas siempre me da error.

Agradezco el tiempo prestado..
__________________
Se invierte mas dinero en cirugía de pechos y viagra que en la cura del Alzheimer. En unos años tendremos viejas con grandes tetas y viejos con erecciones pero que no recordarán para que sirven..
  #2 (permalink)  
Antiguo 27/06/2012, 16:11
sjj
 
Fecha de Ingreso: octubre-2008
Mensajes: 213
Antigüedad: 15 años, 5 meses
Puntos: 12
Respuesta: problema con sentencia

¿Y cuál es la condición para que se ejecute la consulta? ¿Y qué muestra en caso de que no se ejcute? Bueno, poné algo así y completalo con la información que falta =):

Código PHP:
if (condicion)
{
$fields $_POST['select']; 
 
for(
$i=0;$i<count($fields);$i++)
{
   
$consulta "DELETE FROM main_data WHERE id_data = '$fields[$i]'";
   
$ejecutar=mysql_query($consulta) or die ("Error !!");
 
     echo 
"<script>alert('File deleted from Quotes History');
                        location='"
$_SERVER['HTTP_REFERER'] ."';                                               
                    </script>"

        }
}
else
{
echo 
"Aca poné lo que querés que se vea si no se ejecuta";

  #3 (permalink)  
Antiguo 27/06/2012, 16:19
 
Fecha de Ingreso: agosto-2008
Ubicación: Miami, FL
Mensajes: 210
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: problema con sentencia

Hola sjj,
no entiendo la parte de la condición,
en realidad no hay ninguna, yo tengo un listado con un check box con value select, este codigo lo que hace es recoger todos los select marcados y eliminarlos, pero al "if"no se que condicion ponerle


Gracias por tu tiempo
__________________
Se invierte mas dinero en cirugía de pechos y viagra que en la cura del Alzheimer. En unos años tendremos viejas con grandes tetas y viejos con erecciones pero que no recordarán para que sirven..
  #4 (permalink)  
Antiguo 27/06/2012, 22:39
sjj
 
Fecha de Ingreso: octubre-2008
Mensajes: 213
Antigüedad: 15 años, 5 meses
Puntos: 12
Respuesta: problema con sentencia

Cita:
Iniciado por desoler Ver Mensaje
y es que cuando se cumple la función esta bien y se ejecuta pero si no se cumple la pagina se queda en blanco.
Cuando acá decís que se cumple o no se cumple la función, ¿a qué te referís? Entiendo que la función no se ejecuta siempre sino en algunos casos, por eso a veces se cumple y a veces no. Si esto es así, donde puse condición debería ir eso que tiene que suceder para que se cumpla.

Ej: si se cumple cuando la variable $var tiene valor 1 entonces:

Código PHP:
if ($var==1

$fields $_POST['select'];  
  
for(
$i=0;$i<count($fields);$i++) 

   
$consulta "DELETE FROM main_data WHERE id_data = '$fields[$i]'"
   
$ejecutar=mysql_query($consulta) or die ("Error !!"); 
  
     echo 
"<script>alert('File deleted from Quotes History'); 
                        location='"
$_SERVER['HTTP_REFERER'] ."';                                                
                    </script>"
;  
        } 

else 

echo 
"Aca poné lo que querés que se vea si no se ejecuta"

  #5 (permalink)  
Antiguo 28/06/2012, 04:11
 
Fecha de Ingreso: septiembre-2005
Mensajes: 840
Antigüedad: 18 años, 7 meses
Puntos: 84
Respuesta: problema con sentencia

Supongo que lo que te pasa es que, cuando no te envian ningun dato, se queda en blanco, pero qndo los tienes es cuando aparece algo.

Podrias solucionarlo asi:

Código PHP:
$fields $_POST['select'];
$hayDatos ;
 
for(
$i=0;$i<count($fields);$i++)
{
   
$hayDatos++ ;
   
$consulta "DELETE FROM main_data WHERE id_data = '$fields[$i]'";
   
$ejecutar=mysql_query($consulta) or die ("Error !!");
 
     echo 
"<script>alert('File deleted from Quotes History');
                        location='"
$_SERVER['HTTP_REFERER'] ."';                                               
                    </script>"

}

if (
$hayDatos == 0)
{
   
// Codigo que quieres que aparezca cuando no hay ningun dato.
   
echo "Sin datos." ;

__________________
» Presupuesto Pagina Web
  #6 (permalink)  
Antiguo 28/06/2012, 12:30
 
Fecha de Ingreso: agosto-2008
Ubicación: Miami, FL
Mensajes: 210
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: problema con sentencia

Gracias por la ayuda,

miSko, tu respuesta funcionó correctamente, ero exactamente lo que yo no sabía hacer.
Un 10 .

Gracias a todos por la ayuda.
__________________
Se invierte mas dinero en cirugía de pechos y viagra que en la cura del Alzheimer. En unos años tendremos viejas con grandes tetas y viejos con erecciones pero que no recordarán para que sirven..

Etiquetas: Ninguno
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 03:44.