Ir al contenido


Foto

error en php al enviar variable por url


  • Por favor identifícate para responder
2 respuestas en este tema

#1 mariorockstar

mariorockstar

    Member

  • Miembros
  • PipPip
  • 12 mensajes

Escrito 28 mayo 2012 - 11:29

Hola!!!!! espero que me puedan ayudar resulta que tengo un formulario y el codigo es el siguiente:

<form name="agregar" method="post" action="index.php?operacion=agregar">
  <td><label for="nombre"><input type="text" name="nombre" size="10"></label></td>
  <td><label for="estado">
  <select name="estado" id="estado">
  <option>Sin iniciar</option>
      <option>Iniciado</option>
        <option>Finalizado</option>
            <option>Suspendido</option>
            </select>
            </label>
            <td><label for="proyecto"><input type="text" name="proyecto" id="proyecto" size="10" /></label></td>
            <td><label for="cargo"><input type="text" name="cargo" id="cargo" size="10" /></label></td>
            <td><label for="calificacion"><input type="text" name="calificacion" id="calificacion" size="10" /></label></td>
            <td><label for="pulsa">
  <input type="submit" name="pulsa" id="pulsa" value="Nueva Entrada" />
</label></td>
  </form>


en la cual estoy enviando una variable llamada operacion a un archivo index.php pero me da un error que es el siguiente:
Notice: Undefined index: operacion in C:\wamp\www\php\bd\index.php on line 18

el codigo del index.php es el siguiente:
<?php   

if($_GET["operacion"]){                        // Y AQUI ES DONDE ME DA EL ERROR
$operacion= $_GET["operacion"];
}
if(!isset($_GET['nume'])){
$nume="";
}else{
$nume= $_GET['nume'];
}
if ($operacion=="informes"){
include("informes.php");
}else if ($operacion=="informe1"){
include("informe1.php");
}else{
include("listado.php");
}
?>

espero que me puedan ayudar
  • 0

#2 seoane

seoane

    Advanced Member

  • Administrador
  • 1.259 mensajes
  • LocationEspaña

Escrito 29 mayo 2012 - 12:23

Vamos por partes. Lo primero es que no es muy acertado mezclar POST y GET, asi que si quieres pasar un valor fijo en tu formaulario puedes usar un campo del tipo "hidden" que precisamente están para eso:

<form name="agregar" method="post" action="index.php">
  <input type="hidden" name="operacion" value="agregar">
  <td><label for="nombre"><input type="text" name="nombre" size="10"></label></td>
  <td><label for="estado">
  <select name="estado" id="estado">
  <option>Sin iniciar</option>
      <option>Iniciado</option>
        <option>Finalizado</option>
            <option>Suspendido</option>
            </select>
            </label>
            <td><label for="proyecto"><input type="text" name="proyecto" id="proyecto" size="10" /></label></td>
            <td><label for="cargo"><input type="text" name="cargo" id="cargo" size="10" /></label></td>
            <td><label for="calificacion"><input type="text" name="calificacion" id="calificacion" size="10" /></label></td>
            <td><label for="pulsa">
          <input type="submit" name="pulsa" id="pulsa" value="Nueva Entrada" />
        </label></td>
  </form>


Por otro lado no se que intentas conseguir aqui:

if($_GET["operacion"]){


Entiendo que deberia ser algo como esto:

if(isset($_GET["operacion"])){


Aunque si utilizas el campo hidden deberia ser asi:

if(isset($_POST["operacion"])){


Saludos

  • 0

#3 mariorockstar

mariorockstar

    Member

  • Miembros
  • PipPip
  • 12 mensajes

Escrito 29 mayo 2012 - 10:23

Gracias por la observacion ya que soy nuevo en esto. y lo que prentendo
if($_GET["operacion"]){  en esta parte es capturar la operacion que estoy pasando por otros archivos como: insertar, ver reportes y dependiendo que es lo que traiga la varible operacion asi es como incluira el archivo php

Pero creo que tus sugerencias son muy asertadas.

Gracias!!!!!!
  • 0




IP.Board spam blocked by CleanTalk.