Foros del Web » Programando para Internet » PHP »

PHP OO DUPLICADO: Cambiar los nombres de las variables y distintos elementos en un bucle

Estas en el tema de DUPLICADO: Cambiar los nombres de las variables y distintos elementos en un bucle en el foro de PHP en Foros del Web. El tema es el siguiente: Tengo esto en mi codigo: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original $cantidad = $_POST [ 'cantidad' ] ;   $h1 ...
  #1 (permalink)  
Antiguo 25/03/2015, 16:41
 
Fecha de Ingreso: marzo-2015
Mensajes: 11
Antigüedad: 3 años, 8 meses
Puntos: 0
Pregunta DUPLICADO: Cambiar los nombres de las variables y distintos elementos en un bucle

El tema es el siguiente:

Tengo esto en mi codigo:
Código PHP:
Ver original
  1. $cantidad = $_POST ['cantidad'];
  2.  
  3. $h1 = $_POST ['1'];
  4. $h2 = $_POST ['2'];
  5. $h3 = $_POST ['3'];
  6. $h4 = $_POST ['4'];
  7. $h5 = $_POST ['5'];
  8. $dia = date('d'); $mes = date('m'); $anio = date('Y');
  9. $fecha = $dia."/".$mes."/".$anio; //fecha actual
  10.  
  11. mysql_connect("........");
  12. mysql_select_db("..........");
  13.  
  14. if ($h1!=NULL){
  15. $sSQL="UPDATE ticket SET estado = 'C', f_finp = '$fecha' WHERE id_ticket = $h1";
  16. mysql_query($sSQL);
  17. }
  18. if ($h2!=NULL){
  19. $sSQL2="UPDATE ticket SET estado = 'C', f_finp = '$fecha' WHERE id_ticket = $h2";
  20. mysql_query($sSQL2);
  21. }
  22. if ($h3!=NULL){
  23. $sSQL3="UPDATE ticket SET estado = 'C', f_finp = '$fecha' WHERE id_ticket = $h3";
  24. mysql_query($sSQL3);
  25. }
  26. if ($h4!=NULL){
  27. $sSQL4="UPDATE ticket SET estado = 'C', f_finp = '$fecha' WHERE id_ticket = $h4";
  28. mysql_query($sSQL4);
  29. }
  30. if ($h5!=NULL){
  31. $sSQL5="UPDATE ticket SET estado = 'C', f_finp = '$fecha' WHERE id_ticket = $h5";
  32. mysql_query($sSQL5);
  33. }
Lo hice asi para salir del paso pero aca está limitado en 5 la cantidad de elementos y si el ususario tiene de 6 para arriba ya no funciona. Yo tengo la cantidad de elementos guardado en $cantidad, ahora mi duda es como hacer para ir cambiando los nombres de las variables (en un bucle for por ejemplo) $h1, $h2, h3..... y lo que tomaría de valor con el método POST: $_POST ['1']; $_POST ['2']; $_POST ['3'].... y tambien los valores de las sentencias:
if ($h1!=NULL){
$sSQL1="UPDATE ticket SET estado = 'C', f_finp = '$fecha' WHERE id_ticket = $h1";
mysql_query($sSQL1);

(subrayo en negrita lo que tendria que ir cambiando)
Si alguien me ayuda le estaría muy agradecido!!!
  #2 (permalink)  
Antiguo 25/03/2015, 17:13
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 10 años, 8 meses
Puntos: 2531
Respuesta: Cambiar los nombres de las variables y distintos elementos en un bucle

Antes que nada, estás duplicando temas:

http://www.forosdelweb.com/f18/cambi...bucle-1124045/

Por favor lee las normas del foro, evita ser sancionado.

Ahora, volviendo al tema:

Lo correcto es que uses la notación de array:
Código PHP:
Ver original
  1. <input name="ids[]" value="x">
  2. <input name="ids[]" value="y">
  3. <input name="ids[]" value="z">
  4. ...

Entonces al recibir todo lo haces así: $_POST['ids']

Y desde luego, al ser un array no tienes que ir haciendo caso por caso a mano:
Código PHP:
Ver original
  1. foreach ($_POST['ids'] as $id) {
  2.   $sql = "UPDATE ticket SET estado = 'C', f_finp = '$fecha' WHERE id_ticket = $id";
  3.   // ...
  4. }

O mejor aún, usando la sintaxis IN:
Cita:
UPDATE tabla SET campo = 'valor' WHERE id IN(1,2,3,...)
Sea lo que sea debes cambiar la forma en que haces las cosas, por tu bien.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 25/03/2015, 17:44
 
Fecha de Ingreso: marzo-2015
Mensajes: 11
Antigüedad: 3 años, 8 meses
Puntos: 0
Respuesta: DUPLICADO: Cambiar los nombres de las variables y distintos elementos en u

Soy nuevo en este foro y me dijeron que use etiquetas highlight o algo así, por eso postee nuevamente y me olvidé de eliminar el otro. Me parece que con la soberbia no se gana nada... Saludos y gracias por la respuesta ;)
  #4 (permalink)  
Antiguo 25/03/2015, 17:59
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 5 años, 3 meses
Puntos: 145
Respuesta: DUPLICADO: Cambiar los nombres de las variables y distintos elementos en u

Cita:
Iniciado por thiagossl Ver Mensaje
Soy nuevo en este foro y me dijeron que use etiquetas highlight o algo así, por eso postee nuevamente y me olvidé de eliminar el otro. Me parece que con la soberbia no se gana nada... Saludos y gracias por la respuesta ;)
Sí es cierto que en el foro está el error de no poder eliminar temas, pero, ¿qué es eso de 'soberbia? Está tratando de ayudarte
__________________
¿Te sirvió la respuesta? Deja un +1

Etiquetas: bucle, distintos, elementos, fecha, mysql, nombres, select, sql, variable, variables
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 10:48.