Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    problema query per inserire dati

    Ciao a tutti!!
    Di seguito vi posto il codice che utilizzo per inserire i dati in db oracle:

    $id_msg=$_POST['id_msg'];
    $titolo=$_POST['titolo'];
    $testo=$_POST['testo'];
    $ordine=$_POST['ordine'];
    $data_creazione=$_POST['data_creazione'];
    $data_inizio=$_POST['data_inizio'];
    $data_fine=$_POST['data_fine'];
    $utente=$_POST['utente'];

    $con=oci_connect("console","console","sigla40t.zoo .intra");

    $inserimento=oci_parse($con,"INSERT INTO cons_messaggi
    (id_msg, titolo, testo, ordine, data_crazione, data_inizio, data_fine, utente)
    VALUE
    ('id_msg', '$titolo', '$testo', '$ordine', '$data_creazione', '$data_inizio', '$data_fine', '$utente');
    COMMIT;") or die ('Query non eseguita!');
    oci_execute($inserimento);
    oci_close($con);

    cos'è che non va secondo voi?
    Ho visualizzato il valore delle variabili che recupero con il metodo post e le ho inserite in una query al posto delle variabili, ho eseguito la query su "SQLPlus Worksheet" e lì viene inserita correttamente perchè da php no?
    Cosa sbaglio??? Cosa mi manca???
    Per favore help me!!!

  2. #2
    Utente di HTML.it L'avatar di jcsnake
    Registrato dal
    Jun 2010
    Messaggi
    629
    Ciao, così a prima vista...
    ...
    VALUE
    ('id_msg', '$titolo', '$testo', '$ordine', '$data_creazione', '$data_inizio', '$data_fine', '$utente');
    COMMIT;")
    ...
    ...'id_msg'...invece di $id_msg, spero sia solo un errore di post qui e non nel tuo codice

  3. #3
    Non è VALUE ma VALUES
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  4. #4
    non so perchè qui non l'ho messo ma di là c'è e non funziona lo stesso
    Idem values... ho sbagliato a riportarlo qui...scusate!!!

    lo riposto:


    Codice PHP:
    $inserimento=oci_parse($con,"INSERT INTO cons_messaggi
                                    (id_msg, titolo, testo, ordine, data_crazione, data_inizio, data_fine, utente)
                                    VALUES
                                    ('
    $id_msg', '$titolo', '$testo', '$ordine', '$data_creazione', '$data_inizio', '$data_fine', '$utente');
                                    COMMIT;"
    ) or die ('Query non eseguita!');
        
    oci_execute($inserimento); 

  5. #5
    Utente di HTML.it L'avatar di jcsnake
    Registrato dal
    Jun 2010
    Messaggi
    629
    Originariamente inviato da satifal
    Non è VALUE ma VALUES

  6. #6
    Oltre questo avete altre idee???

  7. #7
    Utente di HTML.it L'avatar di jcsnake
    Registrato dal
    Jun 2010
    Messaggi
    629
    Ma quel COMMIT perchè?E sopratutto perchè non aggiungi l'errore che ti riporta con un oci_error()?

  8. #8
    In oracle serve committare ogni operazione!!! Altrimenti non viene "salvata" se così si può dire!!!
    Per quanto riguarda l'oci_error() ora lo metto!!!

  9. #9
    Questo è l'errore che mi restituisce:

    Warning: oci_execute() [function.oci-execute]: ORA-00911: carattere non valido in C:\Apache\htdocs\tra_redazione.php on line 35

    ORA-00911: carattere non valido

    Dato che mi diceva carattere non valido; gli ho fatto stampare la query così come la vede lui e mi ha restituito questo:

    INSERT INTO cons_messaggi
    (id_msg, titolo, testo, ordine, data_crazione, data_inizio, data_fine, utente)
    VALUES
    ('17', 'prova', 'prova', '1', '16-NOV-11', '16-NOV-11', '31-DIC-11', '226');
    COMMIT;

    Non c'è incongruità con i dati perchè se la stessa la copio su "SQLPlus Worksheet" funziona
    Uff....perchè??????

  10. #10
    Originariamente inviato da Saretta883
    Questo è l'errore che mi restituisce:

    Warning: oci_execute() [function.oci-execute]: ORA-00911: carattere non valido in C:\Apache\htdocs\tra_redazione.php on line 35

    ORA-00911: carattere non valido

    Dato che mi diceva carattere non valido; gli ho fatto stampare la query così come la vede lui e mi ha restituito questo:

    INSERT INTO cons_messaggi
    (id_msg, titolo, testo, ordine, data_crazione, data_inizio, data_fine, utente)
    VALUES
    ('17', 'prova', 'prova', '1', '16-NOV-11', '16-NOV-11', '31-DIC-11', '226');
    COMMIT;

    Non c'è incongruità con i dati perchè se la stessa la copio su "SQLPlus Worksheet" funziona
    Uff....perchè??????
    Sei sicura di poter mettere la commit così all'interno della stessa query? Perchè così funziona su un client SQL ma non credo funzioni in PHP.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

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.