Foros del Web » Programando para Internet » PHP »

problemas con $_GET

Estas en el tema de problemas con $_GET en el foro de PHP en Foros del Web. foreros alguien sabe que error estoy cometiendo , espero puedan ayudarme @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original <form action="operacion.php" method="POST" enctype="multipart/form-data"> <input type="hidden" value="subeimagen" name="operacion"> ...
  #1 (permalink)  
Antiguo 12/07/2011, 19:39
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
problemas con $_GET

foreros

alguien sabe que error estoy cometiendo , espero puedan ayudarme

Código PHP:
Ver original
  1. <form action="operacion.php" method="POST" enctype="multipart/form-data">
  2. <input type="hidden" value="subeimagen" name="operacion">
  3. <input type="hidden" value="<?php echo "".$_GET['idportafolio']."";?>">
  4. <br>
  5. <h5>SUBIR PROYECTOS</h5><br>
  6. <table cellspacing="7" border="0" widht="500" bgcolor="#efeff5" class="letras">
  7.   <tr>
  8.     <td>Subir Im&aacute;gen</td>
  9.     <td><input name="archivo" type="file"></td>
  10.   </tr>
  11.   <tr>
  12.     <td>Nombre del Proyecto:</td>
  13.     <td><input type="text" name="nombreproyecto"></td>
  14.   </tr>
  15.   <tr>
  16.     <td>Tipo de Proyecto</td>
  17.     <td>   
  18.         <SELECT NAME="areaespecializacion">
  19.             <?php
  20.                 $sql="select * from areaespecializacion";
  21.                 $resultado=mysql_query($sql,$link)or die(mysql_error());
  22.                     while($row = mysql_fetch_array($resultado)) {
  23.                             $idareaespecializacion=$row["idareaespecializacion"];
  24.                             $areaespecializacion=$row["areaespecializacion"];
  25.                          
  26.                             echo"<option value=$idareaespecializacion>$areaespecializacion</option>";
  27.                        
  28.                         }
  29.             ?>
  30.         </SELECT></td>
  31.   </tr>
  32.   <tr>
  33.     <td colspan="2"></td>
  34.   </tr>
  35.   <tr>
  36.     <td></td>
  37.     <td valign="center"><input type="submit" value="Subir Proyecto" class="botones" /></td>
  38.   </tr>
  39. </table>
  40. </form>
  41.  
  42.  
  43.  
  44. <br><br>
  45. <h5>PROYECTOS</h5><br>
  46. <?php
  47. $sql="SELECT * FROM areaespecializacion";
  48. $resultado=mysql_query($sql,$link)or die(mysql_error());
  49. while($row = mysql_fetch_array($resultado)) {
  50. $idareaespecializacion=$row["idareaespecializacion"];
  51. $areaespecializacion=$row["areaespecializacion"];
  52.    
  53.     echo"<b>$areaespecializacion</b><br>";
  54.  
  55. $sqlx="SELECT
  56.             proyectos.idproyecto,
  57.             proyectos.nombreproyecto,
  58.             proyectos.archivo,
  59.             proyectos.idareaespecializacion,
  60.             areaespecializacion.idareaespecializacion,
  61.             proyectos.idportafolio
  62.        FROM
  63.             proyectos
  64.       INNER JOIN areaespecializacion ON proyectos.idareaespecializacion = areaespecializacion.idareaespecializacion
  65.       WHERE proyectos.idportafolio= ".$_GET['idportafolio']."
  66.       AND areaespecializacion.idareaespecializacion = '$idareaespecializacion'";
  67.      
  68.      
  69. $resultadox=mysql_query($sqlx,$link)or die(mysql_error());
  70. while($rowx = mysql_fetch_array($resultadox)) {
  71.         $idproyecto=$rowx["idproyecto"];
  72.         $archivo=$rowx["archivo"];
  73.         $nombreproyecto=$rowx["nombreproyecto"];
  74.         $areaespecializacion=$rowx["areaespecializacion"];
  75.  
  76.         echo"<a href=\"index.php?v=editaimagen&imagen=$idproyecto\" class=borderit><IMG SRC=\"tamanoimagen.php?src=proyectos/".$archivo."&x=138&y=104\" BORDER=0 ALT=\"".$nombreproyecto."\" style=\"margin-bottom:8;margin-top:8;margin-right:8;margin-left:8;\"></a>";
  77.    
  78.     }
  79.     echo"<hr><br>";
  80. }
  81.  
  82.  
  83. ?>
subir .php




y este es el codigo con que hago la insercion

Código PHP:
Ver original
  1. case subeimagen:
  2.  
  3. $idportafolio=$_GET['idportafolio'];
  4. $sql_imagen="INSERT INTO proyectos (archivo,nombreproyecto,idareaespecializacion,idportafolio,fecha) values('".$HTTP_POST_FILES['archivo']['name']."','".$_POST["nombreproyecto"]."','".$_POST["areaespecializacion"]."','".$idportafolio."',NOW())";
  5. $result_imagen=mysql_query($sql_imagen,$link) or die ("consulta1: ".mysql_error());
  6.  
  7. //copia archivo en carpeta temporal
  8. if(move_uploaded_file($_FILES['archivo']['tmp_name'],"/home/xxx/public_html/xxx/d/proyectos/".$_FILES['archivo']['name']."")){
  9. header("Location:index.php?v=misproyectos&idportafolio=$id");
  10.  
  11. }
  12. break;

operacion.php


el unico dato que no puedo insertar a la BD es .$_GET['idportafolio']. nose que estoy haciendo mal si el dato lo estoy pasando a traves de la Url , espero puedan echarme una manito.

Saludos y gracias
  #2 (permalink)  
Antiguo 12/07/2011, 19:46
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: problemas con $_GET

¿Te da algún error? Si no pues coloca al principio
Código PHP:
Ver original
  1. <?php
Y dinos que error te da. Si es que alguno.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 12/07/2011, 19:51
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: problemas con $_GET

abimaelrc ,

gracias por contestas me arroja este error

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND areaespecializacion.idareaespecializacion = '1'' at line 12

saludos
  #4 (permalink)  
Antiguo 12/07/2011, 20:30
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: problemas con $_GET

Haz un echo a la variable $sqlx y mira el resultado, hay algo que estás haciendo en la consulta antes de AND areaespecializacion.idareaespecializacion = .... que esta creando un error.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 12/07/2011, 20:37
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: problemas con $_GET

amigo ,

ingreso manualmente un idportafolio a la BD y el select me lee bien los resultados eso es lo extraño ese error yo creo que me lo esta arrojando por el header("Location:index.php?v=misproyectos&idportaf olio=$id");

si mi problema en si es a la hora de insertar $idportafolio=$_GET['idportafolio']; esa variable que viene del formulario subir.php

saludos y espero haber sido mas claro en mi problema
  #6 (permalink)  
Antiguo 12/07/2011, 20:39
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: problemas con $_GET

ah el $sqlx me funciona ok

me imprimio esto .

SELECT proyectos.idproyecto, proyectos.nombreproyecto, proyectos.archivo, proyectos.idareaespecializacion, areaespecializacion.idareaespecializacion, proyectos.idportafolio FROM proyectos INNER JOIN areaespecializacion ON proyectos.idareaespecializacion = areaespecializacion.idareaespecializacion WHERE proyectos.idportafolio= 1 AND areaespecializacion.idareaespecializacion = '2'

saludos
  #7 (permalink)  
Antiguo 13/07/2011, 00:03
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: problemas con $_GET

Es que ese es el problema, te está indicando que el problema está antes de ese AND, ¿cómo tienes declarado la columna proyectos.idportafolio?
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #8 (permalink)  
Antiguo 13/07/2011, 01:59
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 12 años, 11 meses
Puntos: 261
Respuesta: problemas con $_GET

Hay que prestar especial atención a acotar entre comillas simples (') los valores literales (cadenas de caracteres).

En la línea 65 de tu primer mensaje:
Código PHP:
"SELECT...
WHERE proyectos.idportafolio= "
.$_GET['idportafolio'].
AND areaespecializacion.idareaespecializacion = '$idareaespecializacion'"

Debería ser:
Código PHP:
"SELECT...
WHERE proyectos.idportafolio= '"
.$_GET['idportafolio']."' 
AND areaespecializacion.idareaespecializacion = '$idareaespecializacion'"

Saludos,

PD.: No se si solucionará del todo tu error, a priori es lo que he visto.
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight
  #9 (permalink)  
Antiguo 13/07/2011, 19:28
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: problemas con $_GET

Uncontroled_Duck , ya habia tomado en cuenta lo que me indicas igual gracias por comentar ,
el problema como me indicas abimaelrc es que el valor idportafolio no lo estoy tomando por eso al llegar al formulario subir.php ese valor viene vacio ? como puedo tomar el valor de esa variable via $GET ?

Saludos
  #10 (permalink)  
Antiguo 14/07/2011, 02:07
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 12 años, 11 meses
Puntos: 261
Respuesta: problemas con $_GET

Cita:
Iniciado por matt_1985 Ver Mensaje
Uncontroled_Duck , ya habia tomado en cuenta lo que me indicas igual gracias por comentar ,
el problema como me indicas abimaelrc es que el valor idportafolio no lo estoy tomando por eso al llegar al formulario subir.php ese valor viene vacio ? como puedo tomar el valor de esa variable via $GET ?
Saludos
A ver, no he mirado el code a fondo, corrígeme si me equivoco.

1- Tu archivo "subir .php" recibe la variable "$_GET['idportafolio']" a través de la url.
2- La colocas en un imput hidden para mandarla por post con el resto del form
Código PHP:
Ver original
  1. <form action="operacion.php" method="POST" enctype="multipart/form-data">
  2. <input type="hidden" value="subeimagen" name="operacion">
  3. // En la línea de abajo las comillas de la variable sobran...
  4. <input type="hidden" value="<?php echo "".$_GET['idportafolio']."";?>">
  5. ...
3- Y la recibes en el archivo "operacion.php" mediante la variable "$idportafolio"
Código PHP:
Ver original
  1. case subeimagen:
  2.  
  3. $idportafolio = $_GET['idportafolio'];
  4. ...

Si analizamos la situación con estos datos...
1- El imput hidden tiene un value, pero no tiene un name definido, así que asociar la variable recibida a $_GET['NO_name_imput´] nos va a decir

2- Que queremos recibir en "$idportafolio"? Los datos enviados a traves del form mediante $_POST
Por lo tanto al igual que anteriormente, la variable $_GET['idportafolio'] no tendrá valor, pues ni el nombre está definido, ni el tipo de recepción es el correcto.

Al pasar tu variable al INSERT te va a decir de nuevo

Debería ser:
Código PHP:
Ver original
  1. <form action="operacion.php" method="POST" enctype="multipart/form-data">
  2. <input type="hidden" value="subeimagen" name="operacion">
  3. <input type="hidden" value="<?php echo $_GET['idportafolio']; ?>" name="idportafolio">
  4. ...

Y

Código PHP:
Ver original
  1. case subeimagen:
  2.  
  3. $idportafolio = $_POST['idportafolio'];
  4. ...

Prueba y nos cuentas.

Un saludo,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight
  #11 (permalink)  
Antiguo 14/07/2011, 15:43
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: problemas con $_GET

funciono de lujo mi amigo , muchas gracias por tu ayuda y la buena explicacion .

Saludos desde Chile
  #12 (permalink)  
Antiguo 14/07/2011, 15:46
Avatar de wolf3355  
Fecha de Ingreso: julio-2011
Mensajes: 4
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: problemas con $_GET

Hola,qué tal (?)

bueno creo que tu problema es este

tu usas la variable $_GET

y pues pusiste <form action="operacion.php" method="POST" enctype="multipart/form-data">

en el metodo que era $_POST entonces tienes que cambiar el metodo a GET y creo que ese fue tu problema !

Etiquetas: html, 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 02:56.