Foros del Web » Programando para Internet » PHP »

Empezando con PHP

Estas en el tema de Empezando con PHP en el foro de PHP en Foros del Web. Hola buenas tardes. Antes de nada pedir perdon por si lo que voy a preguntar es tan de novato que no merece ni la pena ...
  #1 (permalink)  
Antiguo 25/02/2011, 12:24
 
Fecha de Ingreso: febrero-2007
Mensajes: 93
Antigüedad: 17 años, 10 meses
Puntos: 0
Empezando con PHP

Hola buenas tardes.

Antes de nada pedir perdon por si lo que voy a preguntar es tan de novato que no merece ni la pena ser contestado pero me he atascado y necesito una respuesta convincente...

Veran, he empezado hace poco a estudiar php por que despues de mucho tiempo de hacer webs estaticas, ya era hora de meterme en el mundillo de la web dinamica :), pero al grano. Estoy siguiendo un curso completo que encontre dando vueltas por internet y me he atascado. Es un formulario de un pedido para una tienda online y cuando meto en los campos las unidades del producto que quiero comprar no me aparecen reflejadas, solo me aparece el producto.

Este es el html:

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="css/pruebas.css" type="text/css" media="screen"/>
<title>Banco de Pruebas HTML+CSS+PHP</title>
</head>
<body>
<div id="contenido">
<div id="caja1">
<div id="formulario">
<form action="prueba.php" method="post">
<table border="0">
<tr>
<td><font color="#FFFFFF" face="Arial, Helvetica, sans-serif">ActionScript</font></td>
<td align="center"><font face="Arial, Helvetica, sans-serif">
	<input type="text" name="actionqty" size="3" maxlength="3" /></font></td>
    </tr>
<tr>  
<td><font color="#FFFFFF" face="Arial, Helvetica, sans-serif">Photoshop</font></td>
<td align="center"><font face="Arial, Helvetica, sans-serif">
	<input type="text" name="photoqty" size="3" maxlength="3" /></font></td>
    </tr>
    <tr>  
<td><font color="#FFFFFF" face="Arial, Helvetica, sans-serif">Flash</font></td>
<td align="center"><font face="Arial, Helvetica, sans-serif">
	<input type="text" name="flashqty" size="3" maxlength="3" /></font></td>
    </tr>    
<tr>
	<td colspan="2" align="center"><input type="submit" value="Enviar Pedido" /></td>
    </tr>
</table>
</form>
</div>
</div>
<div id="caja2">
</div>
<div id="caja3">
</div>
</div>
</body>
</html>
Este, el PHP:

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin t&iacute;tulo</title>
</head>
<body>
<?php
echo "<p>Orden procesada a las:";
echo 
date(" H:i ");
echo 
"del dia ";
echo 
date("j ");
echo 
"de ";
echo 
date("F ");
echo 
"del año ";
echo 
date ("Y");
echo 
"<br>";
echo 
"<p>Su pedido es el siguiente: </p>";
    echo 
$actionqty." ActionScript<br>";
    echo 
$photoqty." Photoshop<br>";
    echo 
$flashqty." Flash<br>";
?> 

</body>
</html>
Para subirlo todo a mi localhost uso la version mas reciente de XAMPP sobre W7, por si tiene algo ver.

Repito, sera una novatada pero por mas vueltas que le doy no encuentro el error y en google no se muy bien como buscar este "error"

Agradezco su ayuda por adelantado. Gracias :)
  #2 (permalink)  
Antiguo 25/02/2011, 12:28
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 14 años
Puntos: 51
Respuesta: Empezando con PHP

Sería así:

Código PHP:
Ver original
  1. echo $_POST['actionqty']." ActionScript<br>";
  2.     echo $_POST['photoqty']." Photoshop<br>";
  3.     echo $_POST['flashqty']." Flash<br>";

PD: lee al menos lo básico del manual de php, porque esto lo es...
  #3 (permalink)  
Antiguo 25/02/2011, 12:32
 
Fecha de Ingreso: febrero-2007
Mensajes: 93
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Empezando con PHP

Wow!

Funciona. Ahora si no es mucha molestia, me podrias explicar el por que, que es lo que mas me interesa. Tienes que ver algo con que use ¿<?php en vez de <? a secas?

Supongo que ira por el lado del method, pero no se, ando perdido. Si me lo puedes explicar te lo agradeciria mucho ya que en el curso que estoy haciendo, al que lo hace, le funciona todo d maravilla usando <? a secas y dejandolo todo como estaba...

Muchas gracias tio.
  #4 (permalink)  
Antiguo 25/02/2011, 12:38
 
Fecha de Ingreso: enero-2011
Ubicación: 127.0.0.1
Mensajes: 53
Antigüedad: 13 años, 11 meses
Puntos: 3
Respuesta: Empezando con PHP

El utilizar <? a partir de la versión 5 de php ya no es valido, si el tutorial que estas revisando viene así es por que seguro es con base en la versión 4

Saludos.
  #5 (permalink)  
Antiguo 25/02/2011, 12:39
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años, 7 meses
Puntos: 528
Respuesta: Empezando con PHP

Seguramente el manual que estas viendo ya es algo viejo.
Por seguridad, cuando recibes un dato de un formulario, ya no se recibe simplemente
$midato
ahora debe recibirse ya sea mediante
$_POST["midato"]
o
$_GET["midato"]

SI quieres más información consulta sobre variables globales y métodos get y post
  #6 (permalink)  
Antiguo 25/02/2011, 12:42
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años, 7 meses
Puntos: 394
Respuesta: Empezando con PHP

La verdad es que es mucho mas aconsejable usar la etiqueta <?php ademas que en raras ocasiones esta <? produce errores...

en cuanto a la explicacion date cuenta que tr3m3 te dice que recojas las variables de $_POST

Cuando trabajas con formularios tienes dos formas de enviar los datos a procesar una es $_GET y la otra es $_POST la primera no es aconsejable para pasar los parametros ya que los datos se pueden ver en la barra de direcciones del navegador, mientras que por $_POST son invisibles para el usuario... cuando el usuario presiona el boton debes recojer dichas variables dependiendo del metodo que usaste en el formulario...

si usas $_GET $miVar = $_GET['VariableFormulario'];
si usas $_POST $miVar = $_POST['VariableFormulario'];

Espero entiendas... feliz dia
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #7 (permalink)  
Antiguo 25/02/2011, 12:43
Avatar de solrakmnk  
Fecha de Ingreso: febrero-2011
Ubicación: Mexico
Mensajes: 23
Antigüedad: 13 años, 10 meses
Puntos: 3
Respuesta: Empezando con PHP

Tu error era algo muy sencillo, es querias imprimir $actionqty cuando nisiquiera le habias asignado un valor, como sabras estas enviando tu formulario por metodo POST, entonces hay q recoger esas variables en tu segundo script, lo tomas asi: $_POST['actionqty']
  #8 (permalink)  
Antiguo 25/02/2011, 12:43
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 14 años
Puntos: 51
Respuesta: Empezando con PHP

En la corrección que te hice, si usás un formulario con method post, siempre lo obtenés así:

Código PHP:
Ver original
  1. $variable  = $_POST['variablepost'];

si es get es así:
Código PHP:
Ver original
  1. $variable  = $_GET['variableget'];

variable get y variable post es lo que tenés en el name del input, textarea, checkbox o lo que sea.

El usar <?php o solo <? depende de como tengas configurado tu php.ini, si querés usar solo <?, tenés que habilitar la opción short_open_tag. Lo recomendable es que te acostumbres a usar <?php, ya muchas veces solamente vas a poder usar ese. Y diferencias no tiene demasiadas, solo que cambia la forma en que usará el código.

Por ejemplo, para hacer un echo de algo para estas dos formas es así:

Código PHP:
Ver original
  1. <?php echo 'algo';?>

o

Código PHP:
Ver original
  1. <?='algo'?>
  #9 (permalink)  
Antiguo 25/02/2011, 12:45
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 14 años
Puntos: 51
Respuesta: Empezando con PHP

Cita:
Iniciado por yoncharli Ver Mensaje
El utilizar <? a partir de la versión 5 de php ya no es valido, si el tutorial que estas revisando viene así es por que seguro es con base en la versión 4

Saludos.
Ya no es válido??? Creo que le estás errando. Yo tengo la última versión y todavia se puede usar.
  #10 (permalink)  
Antiguo 25/02/2011, 12:55
 
Fecha de Ingreso: febrero-2007
Mensajes: 93
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Empezando con PHP

Pues si, tiene pinta de ser un curso bastante viejo por que en los tutos usa Dreamweaver MX 2004 y fijaros si ha llovido desde entonces.

Bueno, duda aclarada. Tiene bastante sentido todo. Sobre lo de usar <?php en vez de <?, la verdad es que desde el principio he usado siempre <?php

Ademas del rinconastur, de desarrolloweb.com y de phpya no he encontrado algo mas completo que este curso, son videotutoriales en millones de capitulos de un tal Javier Conde.

Si alguien recomiendo algo mejor que lo diga, si no, MUCHISIMAS GRACIASpor su ayuda.
  #11 (permalink)  
Antiguo 25/02/2011, 12:59
 
Fecha de Ingreso: enero-2011
Ubicación: 127.0.0.1
Mensajes: 53
Antigüedad: 13 años, 11 meses
Puntos: 3
Respuesta: Empezando con PHP

Cita:
Iniciado por walterdevel Ver Mensaje
Ya no es válido??? Creo que le estás errando. Yo tengo la última versión y todavia se puede usar.
La configuración por defecto de php5 trae deshabilitada la opción de etiqueta corta <? , si utilizas wamp o algún otro... la tienen habilitada, pero ya no es recomendable usarla
  #12 (permalink)  
Antiguo 25/02/2011, 13:10
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 14 años
Puntos: 51
Respuesta: Empezando con PHP

Cita:
Iniciado por yoncharli Ver Mensaje
La configuración por defecto de php5 trae deshabilitada la opción de etiqueta corta <? , si utilizas wamp o algún otro... la tienen habilitada, pero ya no es recomendable usarla

Etiquetas: empezando
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 20:03.