• User

    No spe non sto capendo..non me intendo molto di linguaggio sql..
    praticamente io faccio qst procedura:

    entro nel db
    vado sulla tabella che nel mio caso si chiama n5_link
    vado su sql
    copi ed incollo nel riquadro il tuo script con le relative sostituzioni del caso.

    Ora il tuo scirpt è divetanto così:

    $query=mysql_query("SELECT id FROM tabella")or die("Errore query");

    $query=mysql_query("SELECT id FROM tabella");
    $i=1;
    while($array=mysql_fetch_array($query)){
    $id=$array['id'];
    mysql_query("UPDATE tabella SET id='$i' WHERE id='$id' ") or die ("Errore query aggiornamento");
    $i++;
    }

    giusto??

    Grazie mille!!!:D


  • User Attivo

    Il codice di connessione è necessario per collegarsi al database. Usa questo:
    [PHP]<?
    $nome="root";
    $psw="root";
    $host="localhost";
    $db="nomedatabase";

    $conn=mysql_connect($host,$nome,$psw) or die("Errore nella connessione");

    $conndb=mysql_select_db($db,$conn) or die("Errore nella connessione al database");

    ?>[/PHP]
    Dopodiché metti il codice che ti ho postato, ottenendo:

    [PHP]<?
    $nome="root";
    $psw="root";
    $host="localhost";
    $db="nomedatabase";

    $conn=mysql_connect($host,$nome,$psw) or die("Errore nella connessione");

    $conndb=mysql_select_db($db,$conn) or die("Errore nella connessione al database");

    $query=mysql_query("SELECT id FROM tabella");
    $i=1;
    while($array=mysql_fetch_array($query)){
    $id=$array['id'];
    mysql_query("UPDATE tabella SET id='$i' WHERE id='$id' ") or die ("Errore query aggiornamento");
    $i++;
    }
    ?>[/PHP]

    Cambia i dati di connessione con quelli tuoi.


  • User

    Grazie per la risp..ma dove devo insiere qst codice?
    Non devo operare dal phpmyadmin?
    mhmhmh


  • User Attivo

    No no! Questo è un codice che fa tutto direttamente dal tuo sito web.
    Crei una pagina chiamata "aggiustaid.php" e ci copi dentro il codice.
    Dopodiché la vai a richiamare (www.tuosito.it/aggiustaid.php) solo una volta. Quando ha finito di caricare chiudi la pagina e controlli nel db traimite phpmyadmin se è tutto a posto.
    Phpmyadmin non l'hai mai nominato 😉


  • User

    Ho appena provato lao script ed ho cpoiato tutti il codice il un file php l'hoeseguito ma mi da qst errore:

    $query=mysql_query("SELECT id FROM n5gq_link"); $i=1; while($array=mysql_fetch_array($query)){ $id=$array['id']; mysql_query("UPDATE n5gq_link SET id='$i' WHERE id='$id' ") or die ("Errore query aggiornamento"); $i++; } ?>

    Grazie per il tempo che stai perdendo!


  • User Attivo

    Non sai proprio un h di php!! 🙂 Il codice php va inserito tra l'apertura e la chiusura del codice php ( rispettivamente <? e ?> ).
    Quello che ti ha scritto non è un errore ma il codice che devi inserire tra quei tag!
    Copia e incolla in un file php (file.php) questo contenuto, cambiando i valori tra apici ("..") e inserendo i tuoi dati di connessione al database:
    [php]<?
    $nome="root";
    $psw="root";
    $host="localhost";
    $db="nomedatabase";

    $conn=mysql_connect($host,$nome,$psw) or die("Errore nella connessione");

    $conndb=mysql_select_db($db,$conn) or die("Errore nella connessione al database");

    $query=mysql_query("SELECT id FROM tabella");
    $i=1;
    while($array=mysql_fetch_array($query)){
    $id=$array['id'];
    mysql_query("UPDATE tabella SET id='$i' WHERE id='$id' ") or die ("Errore query aggiornamento");
    $i++;
    }
    ?>[/php]


  • User

    Sorry...!!!
    Non conosco il php:D 😄

    Funziona!!! :vaiii:

    Ti ringrazio tantissimo sia per il tempo che ti ho fatto perdere sia per la cortesia delle tue risposte!

    Sei davvero bravo!! Grazie mille ancora!!!!😊


  • User Attivo

    L'importante è che ci sei riuscito.
    Ti chiedo una cosa: guardati qualche pillola su php giusto per capire cosa vedi e come funziona. Poi essere programmatore è un'altra cosa ma almeno quando ti postano qualcosa sai da che parte girarti.

    ci sono un pò di video-pillole di php con la base base del php e il suo funzionamento. Se poi ti interessa allora approfondisci ma almeno qualche video guardalo comunque.

    Ciao 🙂


  • User

    Ho visto il video molto interessante, lo hai fatto tu ?
    Mi sono iscritto al canale! 😉
    Grazie ancora!!!


  • User Attivo

    Si. Bene, così appena inserisco un nuovo video lo vedi subito 🙂
    Allora a presto.


  • User

    MI sono accorto solo ora che c'è qualcosa ch enon va, poichè quando gli utenti inviano un sito la procedura va a buon fine ma non compare nel database. Se per faccio un ottimizzazione/controllo/riparazione/analizza il primo invio dopo questa serie di operazione va ma poi non va di nuovo.
    Mhhhh


  • User Attivo

    @giovannic said:

    MI sono accorto solo ora che c'è qualcosa ch enon va, poichè quando gli utenti inviano un sito la procedura va a buon fine ma non compare nel database. Se per faccio un ottimizzazione/controllo/riparazione/analizza il primo invio dopo questa serie di operazione va ma poi non va di nuovo.
    Mhhhh

    Credo sia un altro problema questo. A proposito: è possibile che gli id che hai usato prima del "riordino" non saranno più utilizzabili per evitare duplicati. Così, giusto per non farti allarmare inutilmente.
    [URL=http://www.giorgiotave.it/forum/gt-world/101972-forum-gt-disponibile-alle-versioni-per-telefoni-cellulari.html]Postato via Mobile


  • User

    E' giusto come dici nella seconda parte della risposta, praticamente avendo immesso manualmente il numero massimo di caratteri (6) e con il 6 caratteri il numero massimo ammissibile è 999999, il sito inviato non veniva memorizzato nel db poichè non poteva andare avanti con l'id. Non so se sono stato chiaro ma ho risolto mettendo il numero corretto da cui il db doveva partire per l'id del sito successo.
    NOn so manco come ho fatto a trovare l'inghippo...:D
    Grazie!!!!!


  • User Attivo

    In questi casi c'è un'unica soluzione, per quel che so: duplica la struttura della tabella "incriminata" e reinserisci i contenuti da capo. Se sono troppi è impensabile ma se invece il numero è limitato te lo consiglio vivamente. Se poi vuoi usare numeri alti usa sempre quelli (es. 50-51-52.. o 100-101-102) senza sovrascrivere nulla.