Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Errore PHP

  1. #1
    Utente di HTML.it L'avatar di unicorn
    Registrato dal
    Aug 2004
    Messaggi
    176

    Errore PHP

    Ho eseguito un operazione di insert, mi compare questo messaggio

    "Cannot add or update a child row: a foreign key constraint fails"

    qualcuno sa spiegarmi cosa significa? premetto che ho controllotato che siano rispettati tutti i vincoli Foreign Key



    GRAZIE

  2. #2

    Re: Errore PHP

    Originariamente inviato da unicorn
    Ho eseguito un operazione di insert, mi compare questo messaggio

    "Cannot add or update a child row: a foreign key constraint fails"

    qualcuno sa spiegarmi cosa significa? premetto che ho controllotato che siano rispettati tutti i vincoli Foreign Key

    GRAZIE
    Evidentemente no. sembrerebbe che manchi il riferimento nella tabella padre. In pratica assegni un valore che non e' presente nel chiave di riferimento esterna.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it L'avatar di unicorn
    Registrato dal
    Aug 2004
    Messaggi
    176
    Credo che il problema sia nel codice php, eccolo:

    .....
    $i=0;

    while($i < count($_POST['prova']))
    {
    $query = "INSERT INTO nt(AA) VALUES ('".$_POST['prova'][$i]."')";

    $result = mysql_query($query) or die(mysql_error());
    print $result;
    $i++;
    }

    l'errore credo dipenda dalla var. $_POST['prova'], in pratica in un'altra pag. ho def. <input type=\"checkbox\" name=\"prova[]\" value=\"".$dati['Nome']."\">
    e un submit che richiama questa pag.


  4. #4
    stampati la query e vedi cosa contiene.... eventualmente anche un print_r di $_POST

    A parte il fatto che userei foreach per scorrere l'array...

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it L'avatar di unicorn
    Registrato dal
    Aug 2004
    Messaggi
    176
    Dunque dopo l'operazione di insert ho aggiunto, come mi hai suggerito queste righe:

    print_r $query;
    print_r $_POST['prova'];

    sia usando una che entrambe la pag visualizzata è bianca, il che mi fa strano.....

    :master:

  6. #6
    Originariamente inviato da unicorn
    Dunque dopo l'operazione di insert ho aggiunto, come mi hai suggerito queste righe:

    print_r $query;
    print_r $_POST['prova'];

    sia usando una che entrambe la pag visualizzata è bianca, il che mi fa strano.....

    :master:
    ad inizio pagina.

    echo "<pre>";
    print_r($_POST);


    e prima di mysql_query

    echo $query;


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Utente di HTML.it L'avatar di unicorn
    Registrato dal
    Aug 2004
    Messaggi
    176
    OK fatto, ecco il risultato


    Array
    (
    [prova] => Array
    (
    [0] => 'valore dellelem. fleggato'
    )

    )


  8. #8
    era questo il dubbio...

    dentro $_POST trovi:

    [prova][0] => 'valore dellelem. fleggato'

    e come foreign key non mi pare un granche'. E' il contenuto di:

    value=\"".$dati['Nome']."

    Devi saperlo tu cos'e'...

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    Utente di HTML.it L'avatar di unicorn
    Registrato dal
    Aug 2004
    Messaggi
    176
    Non so come ho fatto fare l'insert, ma a questo punto ho un 'altro problema....adesso ci sbatto la testa un pò su e poi magari chiedo


  10. #10
    Utente di HTML.it L'avatar di unicorn
    Registrato dal
    Aug 2004
    Messaggi
    176
    Ho risolto il problema eliminando la chiave esterna su cui facevo l'operazione di insert, ma così non mi sembra un granchè perdo il concetto di integrità referenziale o sbaglio....


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 © 2024 vBulletin Solutions, Inc. All rights reserved.