› Foros › PC › Software libre
<div id="contentForm">
<!-- The contact form starts from here-->
<?php
$error = '';
$name = '';
$email = '';
if(isset($_POST['send']))
{
$name = $_POST['name'];
$email = $_POST['email'];
$cantidad = $_POST[4000];
$producto = $_POST["xxx"];
if(trim($name) == '')
{
$error = '<div class="errormsg">Por favor, introduce un nombre</div>';
}
else if(trim($email) == '')
{
$error = '<div class="errormsg">Por favor, introduce un email</div>';
}
else if(!isEmail($email))
{
$error = '<div class="errormsg">Has introducido un email incorrecto.Vuelve a intentarlo.</div>';
}
if($error == '')
{
if(get_magic_quotes_gpc())
{
}
?>
<?php
}
}
if(!isset($_POST['send']) || $error != '')
{
?>
<p>Introduzca sus datos:</p>
<!--Error Message-->
<?=$error;?>
<form method="post" name="contFrm" id="contFrm" action="">
<p>
<label><span class="required">*</span> Nombre:</label>
<input name="name" type="text" class="box" id="name" size="30" value="<?=$name;?>" />
</p>
<p>
<label><span class="required">*</span> Email: </label>
<input name="email" type="text" class="box" id="email" size="30" value="<?=$email;?>" />
</p>
<p><a href="recibir.php?$email=$email&$cantidad=$cantidad&$producto=$producto">ENVIAR</a></p>
</form>
<!-- E-mail verification. Do not edit -->
<?php
}
function isEmail($email)
{
return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i"
,$email));
}
?>
<!-- END CONTACT FORM -->
<p> </p>
</div> <!-- /contentForm -->
<p><a href="recibir.php?$email=$email&$cantidad=$cantidad&$producto=$producto">ENVIAR</a></p>
<div id="contentForm">
<!-- The contact form starts from here-->
<?php
$error = '';
$name = '';
$email = '';
if(isset($_POST['send']))
{
$name = $_POST['name'];
$email = $_POST['email'];
$cantidad = $_POST[4000];
$producto = $_POST["xxx"];
if(trim($name) == '')
{
$error = '<div class="errormsg">Por favor, introduce un nombre</div>';
}
else if(trim($email) == '')
{
$error = '<div class="errormsg">Por favor, introduce un email</div>';
}
else if(!isEmail($email))
{
$error = '<div class="errormsg">Has introducido un email incorrecto.Vuelve a intentarlo.</div>';
}
if($error == '')
{
if(get_magic_quotes_gpc())
{
}
?>
<?php
}
}
if(!isset($_POST['send']) || $error != '')
{
?>
<p>Introduzca sus datos:</p>
<!--Error Message-->
<?=$error;?>
<form method="post" name="contFrm" id="contFrm" action="">
<p>
<label><span class="required">*</span> Nombre:</label>
<input name="name" type="text" class="box" id="name" size="30" value="<?=$name;?>" />
</p>
<p>
<label><span class="required">*</span> Email: </label>
<input name="email" type="text" class="box" id="email" size="30" value="<?=$email;?>" />
</p>
<p><a href="recibir.php?email=$email&cantidad=$cantidad&producto=$producto">ENVIAR</a></p>
</form>
<!-- E-mail verification. Do not edit -->
<?php
}
function isEmail($email)
{
return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i"
,$email));
}
?>
<!-- END CONTACT FORM -->
<p> </p>
</div> <!-- /contentForm -->
rrb32 escribió:¿El archivo se llama recibir.php? ¿Qué es lo que quieres hacer exactamente? ¿Procesar un formulario?
Si me dices exactamente qué es lo que quieres hacer, te lo corrijo en un momento, porque así a simple vista veo unos cuantos errores.
Un saludo.
rrb32 escribió:Entonces tienes 2 archivos, ¿verdad? recibir.php y éste del formulario, ¿no? ¿Cómo se llama éste?
Lo que deberías hacer es en este archivo procesar las variables (añadirlas a la base de datos) y después pasarlas al otro, aunque lo podrías hacer todo en este mismo archivo, no creo que hubiese ningún problema.
Un saludo.
<div id="contentForm">
<!-- The contact form starts from here-->
<?php
$error = '';
$name = '';
$email = '';
if(isset($_POST['send']))
{
$name = $_POST['name'];
$email = $_POST['email'];
$cantidad = $_POST[4000];
$producto = $_POST["xxx"];
if(trim($name) == '')
{
$error = '<div class="errormsg">Por favor, introduce un nombre</div>';
}
else if(trim($email) == '')
{
$error = '<div class="errormsg">Por favor, introduce un email</div>';
}
else if(!isEmail($email))
{
$error = '<div class="errormsg">Has introducido un email incorrecto.Vuelve a intentarlo.</div>';
}
if($error == '')
{
if(get_magic_quotes_gpc())
{
}
}
echo "<meta http-equiv='Refresh' content='0;URL=recibir.php?email=$email&cantidad=$cantidad&producto=$producto' />";
} else {
?>
<p>Introduzca sus datos:</p>
<!--Error Message-->
<?=$error;?>
<form method="post" name="contFrm" id="contFrm" action="nombre_de_este_archivo.php">
<p>
<label><span class="required">*</span> Nombre:</label>
<input name="name" type="text" class="box" id="name" size="30" value="<?=$name;?>" />
</p>
<p>
<label><span class="required">*</span> Email: </label>
<input name="email" type="text" class="box" id="email" size="30" value="<?=$email;?>" />
</p>
<input type="Submit" name="Submit" value="ENVIAR" />
</form>
<!-- E-mail verification. Do not edit -->
<?php
}
function isEmail($email)
{
return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i"
,$email));
}
?>
<!-- END CONTACT FORM -->
<p> </p>
</div> <!-- /contentForm -->
action="nombre_de_este_archivo.php"
echo "<meta http-equiv='Refresh' content='0;URL=recibir.php?email=$email&cantidad=$cantidad&producto=$producto' />";
rrb32 escribió:Vale, te corrijo el código y pruebas, y después si falla, me comentas:
<div id="contentForm">
<!-- The contact form starts from here-->
<?php
$error = '';
$name = '';
$email = '';
if(isset($_POST['send']))
{
$name = $_POST['name'];
$email = $_POST['email'];
$cantidad = $_POST[4000];
$producto = $_POST["xxx"];
if(trim($name) == '')
{
$error = '<div class="errormsg">Por favor, introduce un nombre</div>';
}
else if(trim($email) == '')
{
$error = '<div class="errormsg">Por favor, introduce un email</div>';
}
else if(!isEmail($email))
{
$error = '<div class="errormsg">Has introducido un email incorrecto.Vuelve a intentarlo.</div>';
}
if($error == '')
{
if(get_magic_quotes_gpc())
{
}
}
echo "<meta http-equiv='Refresh' content='0;URL=recibir.php?email=$email&cantidad=$cantidad&producto=$producto' />";
} else {
?>
<p>Introduzca sus datos:</p>
<!--Error Message-->
<?=$error;?>
<form method="post" name="contFrm" id="contFrm" action="nombre_de_este_archivo.php">
<p>
<label><span class="required">*</span> Nombre:</label>
<input name="name" type="text" class="box" id="name" size="30" value="<?=$name;?>" />
</p>
<p>
<label><span class="required">*</span> Email: </label>
<input name="email" type="text" class="box" id="email" size="30" value="<?=$email;?>" />
</p>
<input type="Submit" name="Submit" value="ENVIAR" />
</form>
<!-- E-mail verification. Do not edit -->
<?php
}
function isEmail($email)
{
return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i"
,$email));
}
?>
<!-- END CONTACT FORM -->
<p> </p>
</div> <!-- /contentForm -->
Ahí tienes. Te comento qué he corregido:
En el formulario, no le pasabas a ninguna superglobal ($_GET o $_POST) ninguna variable, puesto que no hacías un Submit del formulario. Para ello, hay que añadir un botón que te haga el trabajo. Has de tener en cuenta que, cuando presiones el botón, te redirigirá a la página definida en el formulario:action="nombre_de_este_archivo.php"
En esa página, recibirás los parámetros en la variable superglobal $_POST. Yo he supuesto que los quieres recibir en esa misma página para comprobarlos, por lo que deberás cambiar el nombre del archivo por el correspondiente. A causa de ello, al final de las comprobaciones he redirigido a la página recibir.php, con:echo "<meta http-equiv='Refresh' content='0;URL=recibir.php?email=$email&cantidad=$cantidad&producto=$producto' />";
Tal vez no es esto lo que quieras hacer, realmente no lo tengo muy claro, pero pruébalo y me comentas.
Un saludo.
if(isset($_POST['send']))
if(isset($_POST['Submit']))