Hola gente,
Escribo porque me sucede los iguiente.
Tengo un formulario donde 1) ingreso los datos del cliente 2) el resto de los datos
3) al hacer submit:
a) Graba los datos del cliente solamente.
b) Muestra a una presentacion preliminar de la ficha. Para luego hacer otro submit y grabar el resto de los datos.
El problema es que esto funciona perfectamente en Firefox y no en IE.
el error que me da es de MySQL.
Duplicate entry '15754545' for key 'rut'
EL campo rut es un index UNIQUE, ya que ese error seria al volver a introducir un nuevo registro con el mismo rut.
Lo extraño es que solamente se hace ese insert, no hay posibilidad que se haga 2 veces.
EL código no lo pondre entero pero es mas o menos asi
Código codigo:
Ver original<?php
require("users/aut_verifica.inc.php");
$nivel_acceso=2; // Nivel de acceso para esta página.
if ($nivel_acceso <= $_SESSION['usuario_nivel']){
header ("Location: $redir?error_login=5");
exit;
}
//establezco variables de session para su uso posterior
isset($_POST['nombreCliente']) ? $_SESSION['nombre'] = $_POST['nombreCliente'] : $_SESSION['nombre'] = '';
<!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>Müller y CIA. Ltda. - Costumer Service - TAG Heuer / Caran d'Ache</title>
<link rel="stylesheet" type="text/css" href="css/960.css">
<link rel="stylesheet" type="text/css" href="css/reset.css">
<link rel="stylesheet" type="text/css" href="css/savneotaller.css">
<link rel="stylesheet" type="text/css" href="css/savneo.css">
<link rel="stylesheet" type="text/css" href="css/text.css">
<script src="js/tareas_xml.js"></script>
<script language="javascript" src="js/jquery-1.3.min.js"></script>
</head>
<body>
<div class="container_12">
<?php include('includes/header.php');?><div class="container_12" id="contenido">
<?php
//recuperamos los datos
$nombre = $_POST['nombreCliente'];
include('includes/conexion.php');
$sql1 = "INSERT INTO clientes (
rut,
dv,
nombre,
apellido,
direccion,
fono,
fax,
email,
agente,
notas,
comuna,
ciudad
) VALUES (
'$rut',
'$dv',
'$nombre',
'$apellido',
'$direccion',
'$fono',
'$fax',
'$email',
'$agente',
'$notas',
'$comuna',
'$ciudad'
)";
mysql_query($sql1) or exit(mysql_error());
//luego con el fin de mostrar los codigos introducidos como texto hago selects a las tablas que referencian los id seleccionados en el formulario
$sql_anterior = "SELECT * FROM ordenes_trabajo WHERE nro_serie = '$nroserie' ORDER BY f_recepcion DESC LIMIT 1,1";
$resulta = mysql_query($sql_anterior) or exit(mysql_error());
while($reg = mysql_fetch_array($resulta)) {
$lastrepara = $reg['f_recepcion'];
};
// y el resto de HTML para mostrar los datos antes de grabar
<div class="grid_11" id="titdeta">DATOS DEL CLIENTE</div>
<div class="clear"></div>
<div class="grid_2" id="titcelda">Cliente:</div> <div id="celda"><?php echo $nombre;?> <?php echo $apellido;?></div>
//con un form que lleva a la otra que graba el resto de los datos
<form id="insert" action="ot_insert.php" method="post">
<input type="button" value="Volver" onClick="history.back();">
<input type="submit" value="Grabar">
</form>
</body>
</html>
Eso, no se que problema habrá que en Firefox hace lo que quiero. Graba y muestra los datos, en IE nada, solo sale el error de mysql.
¿Alguna idea?
Saludos y gracias