Gracias por sus respuestas. Esto es lo que he hecho hasta ahora:
Código PHP:
Ver original<?php
if($_POST) {
//var_dump($_POST);
$tarjeta = $_POST["tarjeta"];
$radio = $_POST["radio"];
//var_dump($tarjeta);
$claseTarjeta = "";
if ($tarjeta == "456337" OR $tarjeta == "456338" OR
$tarjeta == "517784" OR $tarjeta == "493823" OR
$tarjeta == "541254" OR $tarjeta == "493824" OR
$tarjeta == "514006" OR $tarjeta == "529164" OR
$tarjeta == "529060" OR $tarjeta == "523592" AND
$radio == "1" )
{
$radio = 1;
}
else {
echo "La tarjeta no coincide con el programa de lealtad ";
}
if ($tarjeta == "410864" OR $tarjeta == "451418" OR
$tarjeta == "518439" OR $tarjeta == "524471"
AND $radio == "2")
{
$radio = 2;
}
else {
echo "La tarjeta no coincide con el programa de lealtad ";
}
if ($tarjeta == "552450" OR $tarjeta == "477280" OR
$tarjeta == "523587" AND $radio == "3")
{
$radio = 3;
}
else {
echo "La tarjeta no coincide con el programa de lealtad ";
}
if ($tarjeta == "" ){
$msgTarjeta = "Ingrese los primeros seis dígitos de su tarjeta";
$claseTarjeta = "error";
}
}
?>
HTML:
Código HTML:
Ver original<form name="form1" method="post" action="carrito_final.php"> <input type="radio" name="radio" id="radio2" value="<?php echo $radio; ?>">
<table width="42%" border="0"> <td width="49%"> </td> <td><input type="radio" name="radio" id="radio" value="<?php echo $radio; ?>">
<td><input type="radio" name="radio" id="radio" value="<?php echo $radio; ?>">
<td colspan="2"> </td> <td colspan="2">Primeros 6 números de tarjeta BN
</td> <td colspan="2"><input type="text" name="tarjeta" id="tarjeta" value="<?php echo $tarjeta; ?>">
</td> <td colspan="2">Últimos 4 dígitos
</td> <td colspan="2"><input type="text" name="tarjeta2" id="tarjeta2"></td> <input type="submit" name="button" id="button" value="Seleccionar">
Si se valida, la página siguiente tiene esto:
Código PHP:
Ver original<?php if($_POST["radio"] == 1) {
ConfirmacionPago ($_POST["radio"]);
$contenido = 'Hola xxxxx;<br><br>Su solicitud de compra ha sido enviada....<br><p>';
$asunto = 'Solicitud de compra en ...';
EnvioCorreoHtml(ObtenerMailUsuario($_SESSION['MM_IdUsuario']), $contenido, $asunto)
?>
//LO mismo para 2 y 3, sólo que cambia el mensaje
//Funcion ConfirmacionPago
function ConfirmacionPago ($tipo_pago)
{
global $database_conexion, $conexion;
mysql_select_db($database_conexion, $conexion);
$insertSQL = sprintf("INSERT INTO compra (idUsuario, fechacompra, tipopago, totalpago, totalpuntos) VALUES (%s, NOW(), %s, %s, %s )",
GetSQLValueString($_SESSION['MM_IdUsuario'], "int"),
$tipo_pago,
$_SESSION["TotalPrecio"],
$_SESSION["TotalPuntos"]
);
$Result1 = mysql_query($insertSQL, $conexion) or die(mysql_error());
$ultimacompra = mysql_insert_id();
ActualizacionCarrito($ultimacompra);
}
function TextoFormaPago($TipoPago)
{
if ($TipoPago== 1) return " Bc Premios";
if ($TipoPago== 2) return " Platino";
if ($TipoPago== 3) return " Élite";
}
Antes de hacer la validación me funcionaba todo. El problema es cuando intento validarlo con este código que hice.
Alguien me podría ayudar a ver en dónde está el error.
Ahora, en la pagina, el campo tarjeta me muestra el siguiente mensaje:
<br /><b>Notice</b>: Undefined variable: tarjeta in <b>C:\xampp\htdocs\xampp\mallfinal\carrito_pago.ph p</b> on line <b>100</b><br />
Lo extraño que esa variable la definí en $tarjeta = $_POST["tarjeta"];
Desde ya agradezco sus comentarios.
PD. La validación prefiero hacerla con PHP y no con Javascript porque prefiero que esta se haga en el lado del servidor y no en el lado del cliente.