Visualizzazione dei risultati da 1 a 7 su 7

Discussione: salvare le query

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489

    salvare le query

    ciao a tutti.

    ho un problema bello grosso. ho uno script ENORME. circa 2 mb.. scritto da me. da qualche parte ho un errore nelle query e mi vanno a inserire i dati nelle celle sbagliate. ma non riesco a trovarlo e sto cercando dadue setitmane. cé modo di far salvare ad esempio in una tabella separata o in un file di testo o in phpmyadmin o ovunque si voglia tutte le query eseguite, senza dover riprogrammapre apposta ogni singola query?

    cioé io vorrei vedere lo script cosa manda al database come query.

    grazie

    ciao

    igor

  2. #2
    Mi auguro che lo script da 2MB sia per un tuo uso personale e non per essere fruito dai tuoi utenti.

    Ad ogni modo, mi pare di avere capito che si tratti di una sorta di collezione di query al DB.
    Ebbene, ad ogni istruzione mysql_query() associa un die(), in modo che sai qual č la stringa che crea problemi.

    Codice PHP:
    // esempio
    $sql "SELECT * FROM tabella WHERE something = 'something_else' ";
    mysql_query($sql) OR DIE ("$sql<hr />Errore numero: ".mysql_errno()." - Descrizione: ".mysql_error()); 
    In questo modo lo script viene bloccato, nel caso una query non vada a buon fine, segnalando quale sia la query, l'errore restituito da MySQL e la relativa descrizione.

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  3. #3
    Credo che il suo problema non sia di una query che non va, ma di una query che va ma inserisce i dati nel posto sbagliato...

    io farei cosi:

    creerei una funzione personalizzata come questa:
    http://forum.mfweb.it/viewtopic.php?f=6&t=9
    ed aggiungerei al mysql_query, una funzioncina per scrivere un log di ogni query inviata a mysql... pagina, riga, query...
    Poi sostituirei con un replace tutti i mysql_query($query); con debug_query($query, __LINE__, __FILE__); e sarei a posto.

    facci sapere...

    PS: ma i 2mb sono in un unico file? VVoVe:
    Ciao!

  4. #4
    Io avevo capito che avesse uno script con molte query e non sapesse dove si fermi lo script, ma potresti avere ragione!
    Fatto sta che farsi stampare l'errore da MySQL auita nel caso ci sia un nome di colonna sbagliato o casi simili.

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489
    ciao raga!

    i 2 mega sono divisi su tanti tanti file..

    é una specie di gestione utenti, cioé a determinate azioni ricevono dei "punti". fatto sta che utenti chenon sono online da mesi si ritrovano con 1000 punti senza motivo nel giro di una settimana.

    grazie dei consigli provo con el cose da voi indicate. peccato che non c“emodo di configurare phpmyadmin o simili per salvare ogni query. sarebbe molto meno lavoro...

    cio che vorrei capire io é se una query é cosi: "insert into utenti values ..... where username=pippo" oppure "insert into utenti values ..... where username=giuseppe" e giuseppe é sbagliato... vorrei capire quale é la query sbagliata e da dove pija la variabile. il problema é che non ho fatto le query con la variabile. cioé non ho fatto $sql=....; mysql_query($sql);
    bensi ho scritto direttamente dentro la query. mo mi tocca modificare tutti i file e sarį unarogna mostruosa..spero di finire entro il weekend..

    grazie raga!

    ciao

    igor

  6. #6
    insert into ... where č sempre sbagliata... casomai update ... where
    Ciao!

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489
    si sorry nella fretta mi sono confuso. ho ben usato update

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.