Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/05/2013, 09:14
jona86
 
Fecha de Ingreso: enero-2012
Mensajes: 88
Antigüedad: 12 años, 3 meses
Puntos: 1
Que hacer cuando encuentra dos registros iguales

Tengo una duda en un script que agrega resultados de carreras. Lo que hace es tomando las líneas buscar los registros que tengan el nombre y los apellidos iguales y los graba en la tabla de resultados, el caso es que me ha surgido una duda, ya que lo que hace es que cuando encuentra un registro que cumpla las condiciones lo agrega, pero ¿y si hay dos o más corredores con el mismo nombre o que empiecen igual? ¿Cómo podría solucionar eso?

Código PHP:
    $carrera $_POST['carrera'];
    
$clasi $_POST['clasificacion'];
    
$cate $_POST['categoria'];
    
$clasi2 utf8_decode($clasi);
    
$linea strtok ($clasi2,"\n");
    
    
$sqlcarrera "SELECT nombre,fecha_inicio FROM nuke_calendario_ciclocross WHERE id='$carrera'";
    
$resultcarrera mysql_query($sqlcarrera);
    list(
$nomcarrera,$fecha) = mysql_fetch_row($resultcarrera);
    

    
    echo
"carrera: $nomcarrera";
    if (
$cate == 1) echo"Elite";
    if (
$cate == 2) echo"Sub23";
    if (
$cate == 3) echo"Junior";
    if (
$cate == 4) echo"Cadete";
    echo
"<br><br>";
    
        while (
$linea != false) {
        
        list( 
$datos$tiempo ) = explode" - "$linea );
        list( 
$pos$name ) = explode" " $datos 2);
        list( 
$apellidos$nombre ) = explode"," $name );
        
        
$sqlciclista "SELECT id FROM nuke_feminas_cc WHERE nombre LIKE '".$nombre."%' AND apellidos LIKE '".$apellidos."%'";
        
$resultciclista mysql_query($sqlciclista);
        if(list(
$cid) = mysql_fetch_row($resultciclista)) $nex=0;
        else 
$nex=1;
        
        if (
$nex == 0) {
            
$contador++;
            if (
$cate == 1$sqlinsert ="INSERT INTO nuke_resultados_fem_ciclocross (rid,cid,pos,fecha,tiempo) VALUES ('".$carrera."' , '".$cid."' , '".$pos."' , '".$fecha."' , '".$tiempo."')";
            if (
$cate == 2$sqlinsert ="INSERT INTO nuke_resultados_fem_sub23_ciclocross (rid,cid,pos,fecha,tiempo) VALUES ('".$carrera."' , '".$cid."' , '".$pos."' , '".$fecha."' , '".$tiempo."')";
            if (
$cate == 3$sqlinsert ="INSERT INTO nuke_resultados_fem_junior_ciclocross (rid,cid,pos,fecha,tiempo) VALUES ('".$carrera."' , '".$cid."' , '".$pos."' , '".$fecha."' , '".$tiempo."')";
            if (
$cate == 4$sqlinsert ="INSERT INTO nuke_resultados_fem_cadete_ciclocross (rid,cid,pos,fecha,tiempo) VALUES ('".$carrera."' , '".$cid."' , '".$pos."' , '".$fecha."' , '".$tiempo."')";
            
$resultinsert mysql_query($sqlinsert);
            }
        else { echo
"ERROR: El ciclista clasificado ".$pos.", ".$nombre." ".$apellidos." no existe en la base de datos<br>"$errores++; }
        
        
        
//echo"$nombre<br>";
        
        
        
$linea strtok("\n");
        }
    echo
"A&ntilde;adidos $contador resultados"