no actuliza el dato pongo el codigo completo . a la hora de enviar el email comprueba si el dato no existe actulice
Código PHP:
Ver original<?php
include('php/conexion/conexion.php');
/*********funcion ip real**********/
function getIP() {
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
elseif (isset($_SERVER['HTTP_VIA'])) { $ip = $_SERVER['HTTP_VIA'];
}
elseif (isset($_SERVER['REMOTE_ADDR'])) { $ip = $_SERVER['REMOTE_ADDR'];
}
else {
$ip = "ip desconocida";
}
//echo "Tu IP es: $ip";
return $ip;
}
/*********************************/
$sql = "SELECT * FROM tb_starbucks WHERE tb_starbucks.survey_id = ".$_GET['var2']." AND tb_starbucks.id_encuesta = ".$_GET['var1']."";
# Si el dato no existe inserta
if($total == 0){
$ip_real=getIP($ip);
$sql="INSERT INTO tb_starbucks (id_encuesta,survey_id,fecha_hora,ip) VALUES ('$var1','$var2',NOW(),'$ip_real')";
$var3= "Encuesta subida correctamente";
}
}
else {$var3= "Falla en encuesta";}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<head>
<title>Ticket</title>
<link rel="stylesheet" href="css/style.css">
<style type="text/css">
h1{font-size:1.5em}
.tit{color:#005534}
.letras {color:#2c4692}
.numeros{color:#F00}
body{text-align:center}
html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
.error{color:red}
/*input{width: 300px; height:70px}*/
</style>
</head>
<body>
<div id="container">
<header>
<h1 class="tit">Ticket</h1>
<img src="img/logo_starbucks.png">
</header>
<div id="cuerpo" role="main">
<p><h1><?php echo $var3;?></p>
<p>Estimado a ingresado satisfactoriamente la Encuesta</p>
<p> código de confirmación es el <strong class="numeros"><?php echo $var1;?></strong></p>
<p>del cuestionario id <strong class="numeros"><?php echo $var2;?></strong></p>
<p>Enviar copía del ticket por email</p>
<form action="index.php" method="POST">
<input type="hidden" name="var1" value="<?php echo $var1;?>">
<input type="hidden" name="var2" value="<?php echo $var2;?>">
<p><input type="text" name="email"></p>
<p><input type="submit" name="Enviar" value="Enviar"></h1></p>
</form>
<?php
if(isset($_POST['Enviar'])){ $email=$_POST['email'];
$var1=$_POST['var1'];
$var2=$_POST['var2'];
if(($email!= "")&&(filter_var($email, FILTER_VALIDATE_EMAIL
))){ require('php/classmail/class.phpmailer.php');
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = "xxxxxxx"; // SMTP a utilizar. Por ej. smtp.elserver.com
$mail->Username = "xxxxx"; // Correo completo a utilizar
$mail->Password = "xxxxx"; // Contraseña
$mail->Port = 2025; // Puerto a utilizar
$mail->From = "xxxxxx"; // Desde donde enviamos (Para mostrar)
$mail->AddAddress("$email"); // Esta es la dirección a donde enviamos
$mail->IsHTML(true); // El correo se enviara como HTML
$mail->Subject = "Ticket Starbucks"; // Este es el titulo del email.
$body = " <strong>Comprobante</strong> <br><br>";
$body .= "<strong>Código del Cuestionario:</strong> $var2 <br />";
$body .= "<strong>Código de Confirmación:</strong> $var1 <br />";
$mail->Body = $body; // Mensaje a enviar
$mail->AltBody = ""; // Texto sin html
$exito = $mail->Send(); // Envía el correo.
if($exito){
/*$sqlc = "SELECT tb_starbucks.email FROM tb_starbucks WHERE tb_starbucks.email=".$_POST['email']."";
$ejecutarc = mysql_query($sqlc,$link)or die(mysql_error());
$totalc = mysql_num_rows($ejecutarc);*/
# Si el dato no existe actualiza
//if($totalc == 0){
$sqlu="UPDATE tb_starbucks SET email=".$_POST['email']." WHERE var1=".$_POST['var1']."";
//$sqlu=mysql_query("update tb_starbucks set valor1='$email' where var1='$var1'",$link);
//}
header('Location: php/saludo.php'); }else{
header('Location: php/error.php?error=2'); }
}else{
header('Location: php/error.php?error=1'); }
}
?>
</body>
</div>
<footer>
</footer>
</div>
</html>