Visualizzazione risultati 1 fino 4 di 4

Discussione: Php mysql sbaglia a contare le righe!

  1. #1
    Guest

    Question Php mysql sbaglia a contare le righe!

    Guardate qui come in esempio

    Codice PHP:
    $Seleziona = mysql_query("SELECT id FROM Reaction WHERE (email='$EMAIL' AND id='$ID')");
    $Conta = mysql_num_rows($Seleziona);

    if(
    $Conta == 1){
    mysql_query("DELETE FROM Reaction WHERE (email='$EMAIL' AND id='$ID')");
    }else{
    mysql_query("INSERT INTO Reaction(...)VALUES('.....')");
    }


    Ma me ne inserisce 2 di righe.. come è possibile?!?!

    Vi spiego meglio :

    Se invio 10 richieste al secondo me ne inserisce più di 1, fino ad arrivare a 100 200 dipende.

    Come risolvo? Qual è il problema?

    Cerco aiuto urgentemente...



    Ho provato anche con PDO

    Codice PHP:
    $sql = "SELECT count(*) FROM Reaction WHERE (email='$EMAIL' AND id='$ID')";
    $result = $con->prepare($sql);
    $result->execute();
    $Conta = $result->fetchColumn();
    Ma me ne aggiunge sempre di piu...
    Ultima modifica di segrety : 03-10-2017 alle ore 12.17.05

  2. #2
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Dovresti lavorare con i flock (usa ricerca su google) di php... Prima però prova usando il secondo parametro di mysql_query($query,$link_identifier); cerca con google pure questo..
    In pratica se già esiste quell'id lo elimini? Dovrebbe essere se non esiste nulla lo aggiungi se c'è più di un risultato li lasci tutti (poiché in genere gli id sono unici e proprio per questa parola non potrà mai esistere più di uno stesso id) solo se hai intenzione di cancellare quell'id puoi farlo. (Cioè io sono un utente e decido di cancellare il mio account).
    Ma tanto voi non volete applicarvi ma volete la pappa già pronta... Siete da ignorare.
    Ultima modifica di darbula : 03-10-2017 alle ore 16.24.35

  3. #3
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,173

    Predefinito

    Citazione Originalmente inviato da segrety Visualizza messaggio
    Ma me ne inserisce 2 di righe.. come è possibile?!?!

    Ho provato anche con PDO
    Ma me ne aggiunge sempre di piu...
    Allora direi che il problema sta nel codice, ad esempio il tutto è dentro ad un ciclo? Oppure viene richiamato più volte?
    Prova a debuggare un attimo, ad esempio salva in un file di testo le varie richieste e quando effettui una query.


    Citazione Originalmente inviato da darbula
    Dovresti lavorare con i flock
    Idealmente mysql supporta più richieste contemporanee, e quindi non è necessario prendere certe contromisure che invece servono per i file.

    Ciao!

  4. #4
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    if e else se non è vera la condizione in if sarà sempre eseguito l'else invece deve essere eseguita solo se la connessione di quella risorsa è vera e nella query esiste l'errore del campo id non presente o esiste esattamente una volta quello id. (inserimento e altro codice se necessario).
    Ultima modifica di darbula : 03-10-2017 alle ore 20.22.37

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •