Foros del Web » Programando para Internet » PHP »

Error en codigo php

Estas en el tema de Error en codigo php en el foro de PHP en Foros del Web. Buenas tardes, necesito de ayuda de ustedes, el siguiente código según como ya lo veo esta bien, no genera ningún error pero no funciona como ...
  #1 (permalink)  
Antiguo 17/08/2012, 14:11
 
Fecha de Ingreso: octubre-2011
Ubicación: Tierra
Mensajes: 64
Antigüedad: 12 años, 6 meses
Puntos: 0
Exclamación Error en codigo php

Buenas tardes, necesito de ayuda de ustedes, el siguiente código según como ya lo veo esta bien, no genera ningún error pero no funciona como yo quisiera.
Quiero que al darle click a agregar pues me salga la funcion agregar() cosa que si funciona pero cuando quiero darle a actualizar la toma como si hubiera dado click en agregar, creo que es un problema del $_GET Mira Aqui el código de index.php:

Estos dos archivos es un sistema de ingresar actualizar y eliminar usuarios.

<?php
$html="
<a href = 'index.php?consulta=agregar'>agregar<a/>
| <a href = 'index.php?consulta=actualizar'>actualizar<a/>
| <a href = 'index.php?consulta=eliminar'>eliminar<a/>
";
switch(isset($_GET['consulta'])){

case 'agregar':
agregar();
break;
case 'actualizar':
actualizar();
break;
case 'eliminar':
eliminar();
break;
default:
echo $html;
}

function agregar(){
$html="
<form method = 'post' action ='consultas.php?consulta=agregar'>
ingresar nombre a agregar: <input type='text' name = 'nombre'><br/>
<input type = 'submit' value = 'OK'>
<a href ='index.php'>Regresar<a/>
<form/>
";
echo $html;
}
function actulizar(){
$html="
<form method = 'post' action ='consultas.php?consulta=actualizar'>
ingresar id a actualizar: <input type='text' name = 'id'>
ingresar nombre a actualizar: <input type='text' name = 'nombre'>
<input type = 'submit' value = 'OK'>
<a href ='index.php'>Regresarñññ<a/>
<form/>
";
echo $html;
}
function elimnar(){
$html="
<form method = 'post' action ='consultas.php?consulta=eliminar'>
ingresar id a elimnar: <input type='text' name = 'id'>
<input type = 'submit' value = 'OK'>
<a href ='index.php'>Regresar<a/>
<form/>
";
echo $html;
}
?>

Como se enlaza con consulta.php dejo el codigo del archivo aunque no influya en index.php
<?php
switch(isset($_GET['consulta'])){
case 'agregar':
agregar();
break;
case 'actualizar':
actualizar();
break;
case 'eliminar':
eliminar();
break;
default:
echo "<a href = 'index.php'>Regresar<a/>";
}

function miconexion(){return mysql_connect("localhost","root","");}

function agregar(){
$conexion = miconexion();
mysql_select_db("prueba", $conexion);
$que = "INSERT INTO usuarios(nombre) VALUES ('".$_POST['nombre']."') ";
$res = mysql_query($que, $conexion) or die(mysql_error());
mysql_close($conexion);
echo "<a href='index.php'>Regresar<a/>";}

function actualizar(){
$conexion = miconexion();
mysql_select_db("prueba", $conexion);
$que = sprintf("UPDATE usuarios SET nombre = '%s' WHERE id= %s", $_POST['nombre'] , $_POST['id']);
$res = mysql_query($que, $conexion) or die(mysql_error());
mysql_close($conexion);
echo "<a href='index.php'>Regresar<a/>";}

function eliminar(){
$conexion = miconexion();
$queryStr = sprintf("DELETE FROM prueba.usuarios WHERE id= %s", $_POST['id']);
mysql_query($queryStr);
mysql_close($conexion);
echo "<a href='index.php'>Regresar<a/>";}
?>
  #2 (permalink)  
Antiguo 17/08/2012, 14:15
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Error en codigo php

asi de primeras lo que veo es que has puesto mal el nombre en el primer script en las funciones

function actulizar()
function elimnar()

y los llamas asi


case 'actualizar':
actualizar();
break;
case 'eliminar':
eliminar();

no concuerdan
  #3 (permalink)  
Antiguo 17/08/2012, 14:19
 
Fecha de Ingreso: octubre-2011
Ubicación: Tierra
Mensajes: 64
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Error en codigo php

Tienes toda la razón, modifique pero aun asi no pasa nada! lastima no poder modificar el tema
  #4 (permalink)  
Antiguo 17/08/2012, 14:23
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Error en codigo php

pero ambos script los ejecutas en una pmisma pagina o van por separado eso no lo acabe de entender


<b>"Como se enlaza con consulta.php dejo el codigo del archivo aunque no influya en index.php"</b>
  #5 (permalink)  
Antiguo 17/08/2012, 14:24
 
Fecha de Ingreso: octubre-2011
Ubicación: Tierra
Mensajes: 64
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Error en codigo php

Si tu pudieras probar este codigo php entenderias el problema que explique, gracias
  #6 (permalink)  
Antiguo 17/08/2012, 14:25
 
Fecha de Ingreso: octubre-2011
Ubicación: Tierra
Mensajes: 64
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Error en codigo php

Cita:
Iniciado por webankenovi Ver Mensaje
pero ambos script los ejecutas en una pmisma pagina o van por separado eso no lo acabe de entender


<b>"Como se enlaza con consulta.php dejo el codigo del archivo aunque no influya en index.php"</b>
El primer Archivo se llama Index.php el segundo es consultas.php
  #7 (permalink)  
Antiguo 17/08/2012, 14:28
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Error en codigo php

vale vale ya lo estoy probando y efectivamente es como tu dices al pulsar aztualizar muestra agregar voy a ver ....
  #8 (permalink)  
Antiguo 17/08/2012, 14:32
Avatar de Reedyseth  
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 3 meses
Puntos: 36
Respuesta: Error en codigo php

No te funciona por que el el switch estas utilizando isset(), isset() lo único que hace es comprobar que una variable este definida y te devuelve un valor booleano, lo que tienes que hacer es evaluar tu variable con un if antes de usar el switch, ya despues si esta difinida ahora si utilizas el switch.

Tienes que hacer algo así en el switch:

Código:
if(isset($_GET['consulta'])) {
   
    switch($_GET['consulta']){
        .
        .
        .
    }
}

http://www.php.net/manual/es/function.isset.php
  #9 (permalink)  
Antiguo 17/08/2012, 14:38
 
Fecha de Ingreso: octubre-2011
Ubicación: Tierra
Mensajes: 64
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Error en codigo php

Cita:
Iniciado por Reedyseth Ver Mensaje
No te funciona por que el el switch estas utilizando isset(), isset() lo único que hace es comprobar que una variable este definida y te devuelve un valor booleano, lo que tienes que hacer es evaluar tu variable con un if antes de usar el switch, ya despues si esta difinida ahora si utilizas el switch.

Tienes que hacer algo así en el switch:

Código:
if(isset($_GET['consulta'])) {
   
    switch($_GET['consulta']){
        .
        .
        .
    }
}

http://www.php.net/manual/es/function.isset.php
Estas en lo correcto pero probe el codigo que dejaste pero ahora la pagina sale en blanco
  #10 (permalink)  
Antiguo 17/08/2012, 14:42
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Error en codigo php

es lo que te ha dicho lo que pasa que habras copiado el ejemplo y ya esta , adaptalo a tu codigo , ademas yo no usaria las funciones y pasaria directamente el codigo de las funciones en el switch que para el caso es lo mismo

Etiquetas: html
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 20:12.