Visualizzazione dei risultati da 1 a 10 su 13

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    143

    [MySQL] Problema con id modificati manualmente

    Salve,

    Spiego brevemente la situazione, semplificando con un esempio. Ho due tabelle "calciatori" e "gol". Nella seconda memorizzo il numero di gol per anno per ciascun calciatore che poi vado ad associare in questo modo:

    SELECT gol_02, gol_03, gol_04 ecc FROM gol WHERE gol_id = '$calciatore_id'";

    Quindi gol_id e calciatore_id sono e devono essere identici. Fin qui nessun problema. A causa di qualche problemino in questi giorni ho fatto alcuni esperimenti e tra una query e l'altra gli id scorrevano, ritrovandomi in questa situazione:

    Tabella calciatori
    calciatore_id | calciatore_nome
    1 | Ambrosini
    2 | Amelia
    3 | Baggio
    4 | esperimento1
    5 | prova
    ecc ecc

    Una volta risolti i problemi ho iniziato nuovamente ad aggiungere i calciatori e non sapendo come fare per far ricominciare a mysql la numerazione degli id da dove avevo lasciato, li ho modificati manualmente... quindi ho aggiunto Baresi e ho modificato l'id assegnato dal db, cioè 6, con 4. Ho fatto la stessa cosa con la tabella "gol".

    Il problema è che adesso non associa gli id... è come se calciatore_id e gol_id fossero diversi tra loro... esiste una sorta di cache di mysql che magari memorizza gli id dei record in qualche cartella?

    Non riesco a capire quale sia il problema

  2. #2
    Codice PHP:
    //Questo equivale al numero di risultati della tua query
    //che farai per avere un elenco degli ID che hai
    //(mysql_num_rows)
    $tot_risultati 5;

    //Questa array rappresenta la colonna dei tuoi ID
    //dove mancano gli ID eliminati in precedenza
    $ID = array();
    $ID[0] = 1;
    $ID[1] = 2;
    $ID[2] = 4;
    $ID[3] = 6;
    $ID[4] = 7;

    //Crei un ciclo for che individua se è stato
    //saltato un id
    for($i=0$i<$tot_risultati 1$i++)
    {  
        
    //trovo l' id successivo  
        
    $ID_successivo $ID[$i +1];        

       
    //se l' id successivo - l' id attuale è diverso da 1    
       //significa che è stato eliminato un id    
       
    if ($ID_successivo $ID[$i] != 1)    
       {       
           
    //questo è l' id da inserire in sostituzione       
           //di quello eliminato in precedenza       
           
    $id_da_inserire $ID[$i] + 1;       

           
    //blocco il ciclo perchè ho trovato il primo id mancante       
           
    break;                                                     
        }

    Ultima modifica di camionistaxcaso; 24-11-2014 a 13:43

  3. #3
    Scusate ho riesumato un post non volendo, chiedo venia, ora posto nella discussione giusta. Scusate.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.