Foros del Web » Programando para Internet » PHP »

Obtener valor para usar en $Post desde un while

Estas en el tema de Obtener valor para usar en $Post desde un while en el foro de PHP en Foros del Web. Tengo el siguiente código: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original <?php //Define y ejecuta una linea de consulta sobre la BD. $Aux = 'Select * ...
  #1 (permalink)  
Antiguo 28/08/2010, 03:12
Avatar de MarioAlejandroCR2  
Fecha de Ingreso: mayo-2010
Ubicación: Esparza - Puntarenas
Mensajes: 98
Antigüedad: 13 años, 11 meses
Puntos: 2
Pregunta Obtener valor para usar en $Post desde un while

Tengo el siguiente código:

Código PHP:
Ver original
  1. <?php
  2. //Define y ejecuta una linea de consulta sobre la BD.
  3. $Aux = 'Select * from comentario WHERE idnoticia = '.$_GET['idn'].'';
  4. $Regs = mysql_query($Aux, $MiConexion);
  5. $color=0;
  6. while($cateFilar = mysql_fetch_assoc($Regs)){
  7. echo '<div class="comentinfo"><b>' ,$cateFilar['nickname'] ,'</b> dijo el ' ,$cateFilar['fecha'] ,' a las ',$cateFilar['hora'] ,'</div>';
  8. echo '<div class="comentid"><b>ID Comentario: ' ,$cateFilar['idcomentario'] ,'</b>';
  9. $idcom = $cateFilar['idcomentario'];
  10. echo "<form method='post' name='formit' onsubmit='return checkdata(this)'>";
  11. echo "<input name='enviar' type='submit' value='Eliminar comentario' class='white'/>
  12. <input type='hidden' name='OC_insertar' value='formit'>
  13. </form></div>";
  14. echo '<div class="comentusr">' ,$cateFilar['comentario'] ,'<p></p></div>';
  15. }
  16. //Libera la memoria de información cargada
  17. //mysql_free_result($Regs);
  18. ?>

Y funciona bien rellena todo hasta que deso eliminar con el siguiente código:
Código PHP:
Ver original
  1. <?php
  2. $Formu = $_SERVER['PHP_SELF'];
  3. if ((isset($_POST["OC_insertar"])) && ($_POST["OC_insertar"] == "formit")) {
  4. $delSQL = sprintf("delete from comentario where idcomentario= '".$idcom."'");
  5. mysql_select_db($Basedatos, $MiConexion);
  6. $Rest= mysql_query($delSQL, $MiConexion) or die(mysql_error());
  7.  
  8. echo $delSQL;
  9. //$insertIrA = "./visuanoticia.php?idn=".$cons;
  10. //header(sprintf("Location: %s", $insertIrA));
  11. };// fin del if
  12. ?>

Pero no funciona a la hora de eliminar por que no me reconoce lo que lleva la variable del idcomenterio (idcom), me arroja lo siguiente:

Código Apache:
Ver original
  1. Notice: Undefined variable: idcom in C:\Archivos de programa\Apache Software Foundation\Apache2.2\htdocs\ti\visuanoticia.php on line 45 delete from comentario where idcomentario= ''

No se si será por usar un while o que, pero no me esta sirviendo...
De antemano gracias.
  #2 (permalink)  
Antiguo 28/08/2010, 06:18
Avatar de angelAparicio  
Fecha de Ingreso: julio-2009
Ubicación: Sevilla
Mensajes: 307
Antigüedad: 14 años, 9 meses
Puntos: 22
Respuesta: Obtener valor para usar en $Post desde un while

¿Dónde defines idcom? ¿Podrías poner el archivo visuanoticia.php completo?
__________________
Mis webs:
- Programador Web Autónomo
- Conciertos en Sevilla
  #3 (permalink)  
Antiguo 28/08/2010, 07:47
Avatar de JBalde  
Fecha de Ingreso: febrero-2005
Ubicación: Madrid
Mensajes: 118
Antigüedad: 19 años, 2 meses
Puntos: 5
Respuesta: Obtener valor para usar en $Post desde un while

Faltan cachos de código, pero te diría que tu problema esta en $idcom, cuando en la primera página, dibujas el formulario (linea 11 del código de ejemplo), te falta meter otro input hidden que sea tal que

<input type='hidden' name='OC_idcom' value='".$cateFilar['idcomentario']."'>

Y en el otro código, justo antes de declarar $delSQL, debes hacer:

$idcom = $_POST['OC_idcom'];

Con esto ya debería funcionarte. Solo te faltaría si quieres hacer el control preguntando por esa variable de $_POST usando isset.
  #4 (permalink)  
Antiguo 28/08/2010, 13:23
Avatar de MarioAlejandroCR2  
Fecha de Ingreso: mayo-2010
Ubicación: Esparza - Puntarenas
Mensajes: 98
Antigüedad: 13 años, 11 meses
Puntos: 2
Respuesta: Obtener valor para usar en $Post desde un while

Cita:
Iniciado por JBalde Ver Mensaje
Faltan cachos de código, pero te diría que tu problema esta en $idcom, cuando en la primera página, dibujas el formulario (linea 11 del código de ejemplo), te falta meter otro input hidden que sea tal que

<input type='hidden' name='OC_idcom' value='".$cateFilar['idcomentario']."'>

Y en el otro código, justo antes de declarar $delSQL, debes hacer:

$idcom = $_POST['OC_idcom'];

Con esto ya debería funcionarte. Solo te faltaría si quieres hacer el control preguntando por esa variable de $_POST usando isset.
Exactamente no entiendopor que el input en la linea 11, además no me reconoce cateFilar
  #5 (permalink)  
Antiguo 28/08/2010, 14:16
Avatar de MarioAlejandroCR2  
Fecha de Ingreso: mayo-2010
Ubicación: Esparza - Puntarenas
Mensajes: 98
Antigüedad: 13 años, 11 meses
Puntos: 2
Respuesta: Obtener valor para usar en $Post desde un while

Gracias JBalde, me había equivocado, vos decías ejemplo linea 11 y yo buscaba la linea 11 de mi archivo no de la del cuadro que aparece acá, tremendo fail jajaja
  #6 (permalink)  
Antiguo 28/08/2010, 14:46
Avatar de JBalde  
Fecha de Ingreso: febrero-2005
Ubicación: Madrid
Mensajes: 118
Antigüedad: 19 años, 2 meses
Puntos: 5
Respuesta: Obtener valor para usar en $Post desde un while

jejeje claro, yo no conozco el código de tu archivo sino del ejemplo jajajaja. Me alegro que te haya servido.

Etiquetas: post
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 23:54.