2009-01-14 11 views
5

Nuevo en PHP y desarrollo web en general. Estoy tratando de obtener información de un formulario HTML para que aparezca en una tabla en otra página web después de hacer clic en enviar. Así que instalé Apache y luego PHP en mi PC local y esperaba poder probar un script PHP localmente, pero no devolví la información que esperaba. El siguiente es el código del formulario:Prueba de un script PHP en una computadora local

<form method="post" action="showform.php"> 

Please fill out the following form if you would like to be contacted: <br/> 
    Name:<input type="text" name="name" /> <br/><br/> 
    Company: <input type="text" name="company"/> <br/><br/> 
    Phone: <input type="text" name="phone" /> <br/><br/> 
    Email: <input type="text" name="email" /> <br/><br/> 

    <input type="submit" name="Submit" value="Submit" /> 
</form> 

El siguiente es el código para el script PHP:

<table> 
<tr><th>Field Name</th><th>Value(s)</th></tr> 

<?php 
if (empty($_POST)) { 
print "<p>No data was submitted.</p>"; 
} else { 

foreach ($_POST as $key => $value) { 
if (get_magic_quotes_gpc()) $value=stripslashes($value); 
if ($key=='extras') { 

if (is_array($_POST['extras'])){ 
    print "<tr><td><code>$key</code></td><td>"; 
    foreach ($_POST['extras'] as $value) { 
      print "<i>$value</i><br />"; 
      } 
      print "</td></tr>"; 
    } else { 
    print "<tr><td><code>$key</code></td><td><i>$value</i></td></tr>\n"; 
    } 
} else { 

print "<tr><td><code>$key</code></td><td><i>$value</i></td></tr>\n"; 
} 
} 
} 
?> 
</table> 
</body> 
</html> 

sé que funciona cuando se utiliza en Internet, pero ¿cómo es que no lo hace trabaja localmente He comprobado que apache y php están instalados correctamente. ¿Cual podría ser el problema? El resultado actual es una tabla con $ key y $ value en los lugares donde deberían estar los valores correctos, en otras palabras, en las celdas de la tabla. Gracias por su ayuda.

ACTUALIZACIÓN: Ahora trabajando a través de WAMPSERVER, gracias a todos los que ayudaron!

+0

¿Se está procesando PHP en absoluto, o su script no está funcionando como esperaba? Intente crear un archivo PHP con los contenidos: strager

+0

da como resultado una página de información sobre la instalación de php que se devuelve. El problema es obtener los valores del formulario en la tabla en la página web separada cuando se prueba localmente. –

+0

¿Qué versión de PHP estás usando? – strager

Respuesta

7

Echa un vistazo xampp. Instala Apache, Mysql, Perl y PHP en su máquina para que pueda probar todo su sitio localmente. Es un instalador de una sola toma y viene con un ingenioso panel de control para habilitar/deshabilitar cada servicio según sea necesario.

0

Parece que su script PHP no se analiza si literalmente obtiene $value. Intenta ejecutar un phpinfo() básico para verificar esto.

Si PHP no detecta eso, asegúrese de que la ruta a PHP esté configurada en httpd.conf. Sin embargo, recomendaría usar xampp: soy terrible en toda la configuración local y simplemente dejé que el instalador automático lo configure para mí. Sé lo suficiente como para agregar nuevos módulos, etc. más adelante.

-2

A primera vista, parece que está tratando de colocar variables, pero está colocando las variables dentro de una cadena.

Así que esto:

print "<tr><td><code>$key</code></td><td><i>$value</i></td></tr>\n"; 

debe ser algo como:

print "<tr><td><code>" . $key . "</code></td><td><i>" . $value . "</i></td></tr>\n"; 
+3

Esto es incorrecto. Si se ve una variable en una cadena de comillas dobles, se inserta en la cadena como era de esperar. Si se utilizara una comilla simple, la cadena debería dividirse como lo ha mostrado. – strager

3

También puede probar WampServer.

Es un paquete que contiene: Apache, MySQL, PHP (Preconfigurado para su uso en Windows).

+0

Gracias, lo conseguí trabajando a través de WampServer. ¡Muy apreciado! –

Cuestiones relacionadas