Hola soy principiante en php y he creado un formulario sencillo, y lo k m pasa s k cn el apache m funciona bien pero al colgarlo n la web no m va.. no entiendo el xk.. si alguien m puede dcir en k falla el codigo m seria de gran ayuda.1saludo
HTML
Citar
<html>
<head>
<title>Formulario</title>
</head>
<body bgcolor="#6699FF">
<h2>Realizar pedido</h2>
<form action="procesar.php" method="post">
<table width="223" border="0">
<tr>
<td width="153">Placa base :</td>
<td width="60"><input name="placa" size="3" maxlength="3" /></td>
</tr>
<tr>
<td>Microprocesador :</td>
<td><input name="micro" size="3" maxlength="3" /></td>
</tr>
<tr>
<td>T. Grafica :</td>
<td><input name="grafica" size="3" maxlength="3" /></td>
</tr>
<tr>
<td>Direccion de envio :</td>
<td><input name="direcc" size="10" maxlength="15"></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td colspan="2">
<input name="submit" type="submit" value="Confirmar">
</td>
</tr>
</table>
</form>
</body>
</html>
PHP
Citar
<html>
<head>
<title>Procesar pedido</title>
</head>
<body bgcolor="#6699FF">
<h1>Pedido procesado</h1>
<?php
echo "Usted ha pedido : <br>";
echo $placa." Placas base<br>";
echo $micro." Micro procesadores<br>";
echo $grafica." Targetas graficas<br>";
echo "Seran enviadas a la direccion : ".$direcc."<p>";
define("PPLACA",60);
define("PMICRO",150);
define("PTARG",80);
$total=$placa+$micro+$grafica;
$precio=
$placa*PPLACA +
$micro*PMICRO+
$grafica*PTARG;
echo "<li>Total de productos : ".$total;
echo "<li>Precio aproximado : ".$precio." €";
?>
</body>
</html>
Lo que pasa es que en tu servidor tienes las variables globales activadas (lo cual no es recomendable) y tu host las tiene desactivadas.
Las variables de un formulario se reciben de esta manera
//Para post
$variable = $_POST['nombre_del_campo'];
//Para get
$variable = $_GET['nombre_del_campo'];
Y además
define("PPLACA",60);
//Debería ser así
$pplaca = 60;
//A menos que lo vayas a reutilizar en demasiados códigos y funciones
pero cuando yo pongo x ejemplo
Citarecho $placa." Placas base<br>";
y antes en el formulario e puesto en el campo x ejempl 4.
no m dberia salir:
Citar4 placas baase
¿?
con lo de define("PPLACA",60) quiero definir una constante, pa indicar el precio. eso sta mal exo??
gracias, un salu2
Cita de: layker en 17 Noviembre 2007, 14:28 PM
pero cuando yo pongo x ejemplo
Citarecho $placa." Placas base<br>";
y antes en el formulario e puesto en el campo x ejempl 4.
no m dberia salir:
Citar4 placas baase
¿?
Eso solo funciona cuando tienes las variables lgobales activadas. Generalmente no lo están. Así qque para aceder a los valores de un formulario debes usar $_GET y $_POST respectivamente.
Citarcon lo de define("PPLACA",60) quiero definir una constante, pa indicar el precio. eso sta mal exo??
Pues de funcionar funciona, pero con eso defines una constante global, y según el uso que le estás dando no amerita serlo, pero eso ya es tu decisión...
muxas gracias, ya lo he entendido, y m funciona,
gracias x tu ayuda. ;) un saludo