Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   Ayuda con $_GET (https://www.clubdelphi.com/foros/showthread.php?t=51094)

dape 05-12-2007 16:52:18

Ayuda con $_GET
 
¡Hola a todos!, sigo jugando con PHP y me ha surgido un problemita con el $_GET, resulta que tengo dos paginas cpn el siguiten codigo:

Código PHP:

<?php
if (isset($_GET["err"] && $_GET["err"] != "")
{
     if (
$_GET["err"] == 1)
     {
          echo 
"error 1";
     }
}
if (isset(
$_GET["err"] && $_GET["err"] == "")
{
    if (isset(
$_GET["sw"] && $_GET["sw"] != "")
    {
        if (
$_GET["sw"] == 1)
        {
            echo 
"opcion 1";
         }
     }
}
?>
<form method="post" action="proceso.php">
  <input type="text" name="valor" />
</form>

En este primer archivo se envia la variable "valor" al script procesa.php y luego obtiene los valores procesados en dicho script.

Código PHP:

<?php
$valor 
$_POST["valor"];
err "";
sw "";
if (
$valor == "")
{
    
err 1;
}
if (
err == "")
{
    
sw == 1;
    
header("location: form.php?val=".$sw);
}
else
{
   
header("location: form.php?err=".$err);
}

En este script se se asigna valores a las variables err y sw.

El asunto es que cuando err toma valor 1, el form.php recibe el valor de la variable y la evalua, pero cuando la variable err toma otro valor, el form.php no la recibe y no la puede evaluar.

talvez esto ya se trato en el foro, pero a pesar de que he buscado no he encontrado algo parecido, o talvez no he buscado bien, ya que no soy muy ducho en PHP.

Desde ya les doy las gracias por la ayuda que me puedan dar.

Saludos desde Tacna - Perú

David.

dec 05-12-2007 16:58:01

Hola,

Podremos luego seguir adelante, pero, lo primero que llama la atención es esto:

Código PHP:

<?php
$valor 
$_POST["valor"];
err "";
sw "";
if (
$valor == "")
{
    
err 1;
}
if (
err == "")
{
    
sw == 1;
    
header("location: form.php?val=".$sw);
}
else
{
   
header("location: form.php?err=".$err);
}

Fíjate que "err" debe ser "$err", lo mismo que "sw" debe ser "$sw", es decir, variables en PHP. ¿Se te pasó al copiar el código o por ahí pueden ir los tiros? ;)

dape 06-12-2007 18:43:34

YA veo, la variable que paso debe tener el mismo nombre que tiene en el script, con eso ya puedo leer mi variable err, pero aun no puedo leer la otra variable, he intentado contatenando las variables que voy a pasar, pero no es esa la solucion, aun me falta pasar la otra variable, es decir pasasr dos variables por la URL.

Gracias Dec por la ayuda brindada

Saludos desde Tacna -Perú

David.

dec 06-12-2007 18:48:55

Hola,

Me me refería a que las variables tuvieran distinto nombre, sino a que, las variables en PHP comienzan todas con un símbolo "dólar", o sea: $variable, y no variable.

Si lo que ahora necesitas es pasar más de una variable mediante la URL, puedes hacerlo conformando una URL similar a esta:

Código:

http://www.sitioweb.com/?variable1=valor1&variable2=valor2
Empero, fíjate que el método "GET" tiene ciertas restricciones, como la cantidad de datos que pueden pasarse. ¿Te planteaste usar "HTTP POST"? Si no necesitas el método "GET" sí o sí... el método "POST" creo que evita potenciales problemas.

dape 07-12-2007 18:44:33

Eso de que las variables empiezan por $ si lo se, lo que ocurre es que copie mal el codigo, falta de atencion de mi parte.

Así que esa es la forma para pasar dos o mas variables, pues gracias; sobre lo del POST, uso el post cuando utilizo <form>, asi envio los datos y los recogo con el POST en el script de destino, y para ser sincero no se si habrá otra forma de utlizarlo, voy a bucar algo mas sobre eso.

Muchas gracis por tu ayuda, ojala algun dia pueda regresartela tambien.

Saludos desde Tacna - Perú

David.


La franja horaria es GMT +2. Ahora son las 08:01:20.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi