Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Aiutino Verifica Codice Php Errato (forse..)

    Salve a tutti!
    Ho cercato qualche soluzione nel forum ma non ne sono venuto a capo..

    Volevo farmi una paginetta in php da dove poter inserire manualmente un id ordine ed assegnargli un relativo id corriere.

    Ho provato la pagina che ho incollato sotto ma nel database non mi cambia nulla..

    Il database che stò provando è in locale con phpmyadmin.
    Il nome del DB è kart.
    La tabella da modificare è ps_orders.
    L'iD ordine del corriere da modificare è id_order mentre il corriere è in id_carrier.

    Dove sbaglio???
    Grazie!!!

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <meta http-equiv="Content-Language" content="it">
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Modifica Dati</title>

    </head>
    <body>
    <form action="prova3.php" name="Invio dati" target="_parent" enctype="application/x-www-form-urlencoded" method="post">


    Modifica Dati</p>

    Id ordine da Modificare



    <input maxlength="5" name="id_order">





    corriere</p>
    <input maxlength="5" name="id_carrier">






    <p align="left"><input value="Inserisci" name="B1" type="submit"></p>
    </form>



    </body>

    <?php

    $descrizione = $_POST['id_order'];
    $descrizione1 = $_POST['id_carrier'];

    $connessione = mysql_connect("localhost","root","")or die("Connessione non riuscita: " . mysql_error());
    print ("Connesso con successo");

    mysql_select_db("kart", $connessione) or die("Errore nella selezione del database");

    $query = "UPDATE ps_orders SET id_carrier='{$descrizione1}' WHERE id_order=$descrizione";
    if ($query==FALSE) die("errore nella composizione della query". mysql_error());

    $result=mysql_query($query,$connessione);
    if ($result==FALSE) die("Errore inserimento articolo");
    echo " Dati inseriti con successo: ".$descrizione;

    mysql_close($connessione);
    ?>

  2. #2
    inserire un ID manualmente è uan cosa del tutto inutile perchè di solito nel 99,9999999% dei casi lo si crea automaticamente! da phpmyadmin basta impostarlo come chiave primaria con auto-increment, così quando vuoi memorizzare un record gli assegna il primo ID libero disponibile.
    Nel tuo caso se entrambe le tabelle ordine e carrier hanno degli ID gestiti in tal modo puoi ad esempio creare una query per cercare tutti gli ordini fatti dal carrier con ID=123; per sapere chi è quel carrier basta fare un'altra query o inserirla all'interno della precedente per avere ad esmepio nome e cognome del carrier e tutti i suoi ordini!
    te nel tuo form non fai altro che inserire due select, uno per cercare un ordine ed uno per inserire il carrier da modificare.

  3. #3
    Ti ringrazio per la risposta!

    E' proprio quello che volevo fare con lo script che ho inserito ma non funziona.
    Mi da ora un errore nella riga 41 dove dovrebbe fare l'upload al DB.
    Errore di sintassi....

    Io in pratica volgio richiamare un ordine il cui id, assegnato automaticamente, corrisponde al mio numero dell'ordine.
    A questo id voglio quindi assegnare un id corriere il cui valore numerico lo conosco già.

    Il problema è.... come fare!!!!!!

  4. #4
    potresti riportare qua quella riga 41? è mica quella della query con i parametri fra graffe?

  5. #5
    Quella dovrei averla risolta cosi:

    $query = "UPDATE ps_orders SET id_carrier='{$descrizione1}' WHERE id_order='{$descrizione}'";

    Ora l'erroe me lo da qui:

    $descrizione = $_POST['id_order'];
    $descrizione1 = $_POST['id_carrier'];

    Non immagini quanto ti sono grato per l'aiuto!

  6. #6
    ho esaminato per bene la tua pagina, ma non c'è alcun errore di sintassi come dicevi tu, sembra proprio tutto corretto! l'unica istruzione strana è nella definizione del form dove hai messo target="_parent" che in pratica dice di mandare i risultati del form al frame genitore...hia usato die frame? non credo proprio..se si allora la connessione al db doveva avvenire appunto in tale frame dove c'era una pagina chiamata prova3.php, ma evidentemente non esiste, si aspetta una pagina HTML non PHP e quindi da l'errore!

  7. #7
    sIGH.....

    Non lo sò nemmeno io...
    Mi sono preso del codice in rete ed ho cercato di adattarlo alle mie esigenze ma ci capisco poco...

    Se lo apro mi appare l'errore:

    Notice: Undefined index: id_order in C:\xampp\htdocs\prova3.php on line 32

    Notice: Undefined index: id_carrier in C:\xampp\htdocs\prova3.php on line 33
    Connesso con successoErrore inserimento articolo

    Se inserisco i dati nelle 2 caselle mi scompare l'errore, mi resta la riga:
    Connesso con successoErrore inserimento articolo
    ed il DB non cambia nulla...

  8. #8
    se da undefined index come errore è proprio perchè $_POST è un array ma 'id_codice' e 'id_carrier' sono sconosciuti segno quindi che hai reindirizzato alla pagina sbagliata..come disse Bartali l'è tutto da rifare...io ti consiglio di fare come ti ho detto: campi chiave con auto-incremento nelle rispetitve tabelle del DBper i campi ID , due form per inserire i dati di un record (con inseriemnto automatico degli ID) e nel form di modifica selezioni un ordine (prelevando gli ID) e poi il carrier tramite il suo indice per riscriverlo nel database

  9. #9
    Anche se sembra facile..... E' difficile!

    Ti ringrazio molto per l'aiuto che mi hai dato.
    Ora ho riprovato ed ho notato che il db viene aggiornato!
    L'unica cosa è che alla prima apertura della pagina mi da quell'errore stupido, forse perchè i campi sono vuoti.
    Quando però inserisco i valori tutto ora si aggiorna.
    Se potessi risolvere con facilità solo qual noioso errore visivo sarei a posto.
    Ciao!!!!!

  10. #10
    se vuoi contattami in privato, potremmo parlarne su skype o come vuoi!

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.