Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Extraer datos de una tabla html en php

Estas en el tema de Extraer datos de una tabla html en php en el foro de PHP en Foros del Web. Buenos dias. Hoy les escribo para pedir ayuda con algo mas de php. tengo el siguiente html: Código HTML: <table align=center> <BR> <HR> <BR> <DIV ...
  #1 (permalink)  
Antiguo 14/11/2013, 06:55
Avatar de letingel  
Fecha de Ingreso: noviembre-2013
Ubicación: neiva
Mensajes: 41
Antigüedad: 10 años, 5 meses
Puntos: 0
Mensaje Extraer datos de una tabla html en php

Buenos dias.

Hoy les escribo para pedir ayuda con algo mas de php.

tengo el siguiente html:

Código HTML:
<table align=center>
			<BR>
			<HR>
			<BR>
			<DIV ALIGN=center>REQUISICION</DIV>
			<BR>
			<HR>
			<BR>
				<thead>
					<tr>
						<th></th>
                                                <th align=center><font size=1>ITEM</font></th>
						<th align=center><font size=1>DESCRIPCION</font></th>
						<th align=center><font size=1>CANT.</font></th>
						<th align=center><font size=1>MAQUINA</font></th>
						<th align=center><font size=1>EQUIPO</font></th>
						<th align=center><font size=1>EPP</font></th>
						<th align=center><font size=1>HERRAMIENTA</font></th>
						<th align=center><font size=1>FECHA SOLICITADA</font></th>
						
					</tr>
				</thead>
				<tbody>
					<tr>
						<td ALIGN=CENTER><th align=center><font size=1>1</font></td>
						<td ALIGN=CENTER><input  type="text" name="descripcion1" class="clsAnchoTotal" size="26"></td>
						<td ALIGN=CENTER><input  type="text" name="cantidad14" class="clsAnchoTotal" size="5" MAXLENGTH=4></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo1" class="clsAnchoTotal" value="MAQUINA"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo1"class="clsAnchoTotal" value="EQUIPO"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo1" class="clsAnchoTotal" value="EPP"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo1" class="clsAnchoTotal" value="HERRAMIENTA"></td>
						<td ALIGN=CENTER><input type="date" name="fecha1"></td>
					</tr>
<tr>
						<td ALIGN=CENTER><th align=center><font size=1>2</font></td>
						<td ALIGN=CENTER><input  type="text" name="descripcion2" class="clsAnchoTotal" size="26"></td>
						<td ALIGN=CENTER><input  type="text" name="cantidad2" class="clsAnchoTotal" size="5" MAXLENGTH=4></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo2" class="clsAnchoTotal" value="MAQUINA"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo2"class="clsAnchoTotal" value="EQUIPO"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo2" class="clsAnchoTotal" value="EPP"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo2" class="clsAnchoTotal" value="HERRAMIENTA"></td>
						<td ALIGN=CENTER><input type="date" name="fecha2"></td>
					</tr>
<tr>
						<td ALIGN=CENTER><th align=center><font size=1>3</font></td>
						<td ALIGN=CENTER><input  type="text" name="descripcion3" class="clsAnchoTotal" size="26"></td>
						<td ALIGN=CENTER><input  type="text" name="cantidad3" class="clsAnchoTotal" size="5" MAXLENGTH=4></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo3" class="clsAnchoTotal" value="MAQUINA"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo3"class="clsAnchoTotal" value="EQUIPO"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo3" class="clsAnchoTotal" value="EPP"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo3" class="clsAnchoTotal" value="HERRAMIENTA"></td>
						<td ALIGN=CENTER><input type="date" name="fecha3"></td>
					</tr>
<tr>
						<td ALIGN=CENTER><th align=center><font size=1>4</font></td>
						<td ALIGN=CENTER><input  type="text" name="descripcion4" class="clsAnchoTotal" size="26"></td>
						<td ALIGN=CENTER><input  type="text" name="cantidad4" class="clsAnchoTotal" size="5" MAXLENGTH=4></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo4" class="clsAnchoTotal" value="MAQUINA"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo4"class="clsAnchoTotal" value="EQUIPO"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo4" class="clsAnchoTotal" value="EPP"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo4" class="clsAnchoTotal" value="HERRAMIENTA"></td>
						<td ALIGN=CENTER><input type="date" name="fecha4"></td>
					</tr>
<tr>
						<td ALIGN=CENTER><th align=center><font size=1>5</font></td>
						<td ALIGN=CENTER><input  type="text" name="descripcion5" class="clsAnchoTotal" size="26"></td>
						<td ALIGN=CENTER><input  type="text" name="cantidad5" class="clsAnchoTotal" size="5" MAXLENGTH=4></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo5" class="clsAnchoTotal" value="MAQUINA"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo5"class="clsAnchoTotal" value="EQUIPO"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo5" class="clsAnchoTotal" value="EPP"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo5" class="clsAnchoTotal" value="HERRAMIENTA"></td>
						<td ALIGN=CENTER><input type="date" name="fecha5"></td>
					</tr>
<tr>
						<td ALIGN=CENTER><th align=center><font size=1>6</font></td>
						<td ALIGN=CENTER><input  type="text" name="descripcion6" class="clsAnchoTotal" size="26"></td>
						<td ALIGN=CENTER><input  type="text" name="cantidad6" class="clsAnchoTotal" size="5" MAXLENGTH=4></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo6" class="clsAnchoTotal" value="MAQUINA"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo6"class="clsAnchoTotal" value="EQUIPO"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo6" class="clsAnchoTotal" value="EPP"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo6" class="clsAnchoTotal" value="HERRAMIENTA"></td>
						<td ALIGN=CENTER><input type="date" name="fecha6"></td>
					</tr>
<tr>
						<td ALIGN=CENTER><th align=center><font size=1>7</font></td>
						<td ALIGN=CENTER><input  type="text" name="descripcion7" class="clsAnchoTotal" size="26"></td>
						<td ALIGN=CENTER><input  type="text" name="cantidad7" class="clsAnchoTotal" size="5" MAXLENGTH=4></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo7" class="clsAnchoTotal" value="MAQUINA"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo7"class="clsAnchoTotal" value="EQUIPO"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo7" class="clsAnchoTotal" value="EPP"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo7" class="clsAnchoTotal" value="HERRAMIENTA"></td>
						<td ALIGN=CENTER><input type="date" name="fecha7"></td>
					</tr>
<tr>
						<td ALIGN=CENTER><th align=center><font size=1>8</font></td>
						<td ALIGN=CENTER><input  type="text" name="descripcion8" class="clsAnchoTotal" size="26"></td>
						<td ALIGN=CENTER><input  type="text" name="cantidad8" class="clsAnchoTotal" size="5" MAXLENGTH=4></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo8" class="clsAnchoTotal" value="MAQUINA"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo8"class="clsAnchoTotal" value="EQUIPO"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo8" class="clsAnchoTotal" value="EPP"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo8" class="clsAnchoTotal" value="HERRAMIENTA"></td>
						<td ALIGN=CENTER><input type="date" name="fecha8"></td>
					</tr>
<tr>
						<td ALIGN=CENTER><th align=center><font size=1>9</font></td>
						<td ALIGN=CENTER><input  type="text" name="descripcion9" class="clsAnchoTotal" size="26"></td>
						<td ALIGN=CENTER><input  type="text" name="cantidad9" class="clsAnchoTotal" size="5" MAXLENGTH=4></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo9" class="clsAnchoTotal" value="MAQUINA"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo9"class="clsAnchoTotal" value="EQUIPO"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo9" class="clsAnchoTotal" value="EPP"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo9" class="clsAnchoTotal" value="HERRAMIENTA"></td>
						<td ALIGN=CENTER><input type="date" name="fecha9"></td>
					</tr>
<tr>
						<td ALIGN=CENTER><th align=center><font size=1>10</font></td>
						<td ALIGN=CENTER><input  type="text" name="descripcion10" class="clsAnchoTotal" size="26"></td>
						<td ALIGN=CENTER><input  type="text" name="cantidad10" class="clsAnchoTotal" size="5" MAXLENGTH=4></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo10" class="clsAnchoTotal" value="MAQUINA"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo10"class="clsAnchoTotal" value="EQUIPO"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo10" class="clsAnchoTotal" value="EPP"></td>
						<td ALIGN=CENTER><input  type="radio" NAME="tipo10" class="clsAnchoTotal" value="HERRAMIENTA"></td>
						<td ALIGN=CENTER><input type="date" name="fecha10"></td>
					</tr>

				</tbody>
			</table> 
quiero capturar los datos para guardarlos en una base de datos, pero mi pregunta es si hace falta usar el llamado $_POST['']; para cada uno de los input de toda la tabla?? o si hay alguna forma de q los recolecte sin tener que hacer el llamado de todas las variables.
  #2 (permalink)  
Antiguo 14/11/2013, 09:31
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Extraer datos de una tabla html en php

¿el detalle es como te llega esa data?:

si te llega por POST normal, recuerda que $_POST es un arreglo y los obtienes todos

si te llega como HTML, sea por WebServices, cURL, etc, deberías usar DOMDocument o SimpleXML para leer la data dentro del HTML
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 14/11/2013, 09:40
Avatar de letingel  
Fecha de Ingreso: noviembre-2013
Ubicación: neiva
Mensajes: 41
Antigüedad: 10 años, 5 meses
Puntos: 0
Respuesta: Extraer datos de una tabla html en php

esta por $_POST la cuestion es que en el php que lo procesa me toca hacer el llamado de cada uno?? de los input?

Código PHP:
Ver original
  1. $solicitud = $_POST['SOLICITUD'];
  2. $destino = $_POST['DESTINO'];
  3. $centrocosto = $_POST['CENTROCOSTO'];
  4. $solicitante = $_POST['SOLICITANTE'];
  5. $fecha = $_POST['fecha'];
  6.  
  7.  
  8. //primera fila
  9. $item1 = $_POST['item1'];
  10. $descripcion1 = $_POST['descripcion1'];
  11. $cantidad1 = $_POST['cantidad1'];
  12. $maquina1 = $_POST['MAQUINA1'];
  13. $equipo1 = $_POST['EQUIPO1'];
  14. $epp1 = $_POST['EPP1'];
  15. $herramienta1 = $_POST['HERRAMIENTA1'];
  16. $fecha1 = $_POST['fecha1'];
  17.  
  18.  
  19.  
  20.  
  21. ?>

de esta forma hasta completar las 14 filas? no algo que las recorra ??

gracias
  #4 (permalink)  
Antiguo 14/11/2013, 09:42
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Extraer datos de una tabla html en php

recuerda que $_POST es un array (arreglo), por el cual puedes recorrerlo con foreach, investiga en el manual de php sobre manejo de arrays asociativos
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...

Etiquetas: fecha, html, tabla, variable
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 11:45.