Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Passaggio Variabili

  1. #1

    Passaggio Variabili

    Salve a tutti,
    sono abb inesperto con il php e i db, e sot cercando di avvicinarmi a questo linguaggio.
    Girando per il forum, guide, ecc sono riuscito a creare questo form
    <form name="update" method="post" action="update.php">
    <p align="center">Nome:
    <input type=text name=Nome value="<?php echo $_GET['Nome'];?>">
    </p>
    <p align="center">Colore:
    <input name=Colore type=text value="<?php print $_GET['Colore'];?>">




    Edizione:
    <input name=Edizione type=text value="<?php print $_GET['Edizione'];?>">
    </p>
    <p align="center">Rarità
    <input name=Rarità type=text value="<?php print $_GET['Rarità'];?>">
    </p>
    <p align="center">Quantità
    <input name=Quantità type=text value="<?php print $_GET['Quantità'];?>">
    </p>


    Password:
    <input type=password size=40 name=pass>





    <input type=submit value=Modifica>
    <input name="Ripristina" type="reset" id="Ripristina" value="Ripristina">
    </p>
    </form>
    che funzionerebbe bene, se non ci fosse il problema di passargli le variabili dalla pagina prima, cosa che non posso fare attraverso un form.
    Io ho fatto così, grazie a questa riga
    <a href=edit.php?Id=$row[Id]&Nome=$row[Nome]&Colore=$row[Colore]&Edizione=$row[Edizione]&Rarità=$row[Rarità]&Quantità=$row[Quantità]>Edit</a>
    Anche questa funzionerebbe se non ci fosse un se... va tutto bene fino a quando una delle variabili che passo non contiene uno spazio. Se una di esse contiene uno spazio (cosa abb comune per il tipo di dati che inserisco)il passaggio di variabili si interrompe e il mio form si riempie di Notice.

    Ora chiedo a voi: esiste un modo più furbo per passare le variabili tra due pagine php che non contengono form? Posso eliminare in qualche modo gli spazi che mi danno fastidio inserendo al posto il codice html %20 nel momento del passaggio delle variabili?

    __________________________________________________ __________________________
    Secondo problema, smepre con il passaggio delle variabili:

    Una pagina, riceve una variabile tramite $_GET. Questa variabile la riesco a recuperare nell'echo, ma non riesco a riprenderla nell'action del form.
    Cioè
    echo "Sicuro di voler cancellare la carta $_GET[Id] $_GET[Nome]?
    ";
    $Id=$_GET['Id'];
    ?>
    <form method=post action=delete2.php?Id=$_GET[Id]>
    La pagina a cui mi manda il form si chiama proprio "delete2.php?Id=$_GET[Id]" e $_GET[Id] non viene sostituito dal numero relativo al campo selezionato in quel momento, come succede nella riga sopra dell'echo.
    Cosa sbaglio? Come faccio a passare quella variabile Id anche alla action del form???

    __________________________________________________ _________________

    Grazie mille della vostra pazienza e cortesia, conto molto nel vostro aiuto (che mi avete già dato in tutte queste pagine di forum che mi hanno consentito di risolvere molti altri problemi)

  2. #2
    secondo problema:
    E' codice php quindi devi includerlo fra <? e ?>
    primo:
    perchè non puoi usare form?
    cmq puoi passare gli spazio,chi ha detto che non puoi !

  3. #3
    per il tuo problema di spazio potresti usare l'apposita funzione:
    string urlencode ( string str);

  4. #4
    Utente di HTML.it L'avatar di Inoki
    Registrato dal
    Oct 2001
    Messaggi
    788

    Re: Passaggio Variabili

    Originariamente inviato da NMPS-Aragorn
    ...
    che funzionerebbe bene, se non ci fosse il problema di passargli le variabili dalla pagina prima, cosa che non posso fare attraverso un form.
    Io ho fatto così, grazie a questa riga

    codice:
    <a href=edit.php?Id=$row[Id]&Nome=$row[Nome]&Colore=$row[Colore]&Edizione=$row[Edizione]&Rarità=$row[Rarità]&Quantità=$row[Quantità]>Edit</a>
    Questo è sbagliato...

    in questo modo tu vai alla pagina
    edit.php?Id=$ros[Id] .. ecc ecc
    e non quello che servirebbe a te tipo
    edit.php?Id=233ecc ecc

    Devi sostituire la tua stringa in questo modo:
    codice:
    <a href=edit.php?Id=<?PHP echo $row['Id']; ?>&Nome=<?PHP ...eccec
    In ogni caso ricorda che puoi sempre passare varibili con form..
    mettendo magari una serie di campi nascosti.. e inviando il form con un javascript collegato ad un evento onclick, su un link o su una immagine..
    "La teoria è quando si sa tutto e niente funziona. La pratica è quando
    tutto funziona e nessuno sa il perché. In questo caso, abbiamo messo
    insieme la teoria e la pratica: non c'è niente che funziona... e nessuno sa
    il perché!" (Albert Einstein)

  5. #5
    Originariamente inviato da marcio_hack
    cmq puoi passare gli spazio,chi ha detto che non puoi !
    Me lo ha detto il mio browser.
    Se faccio girare quella pagina scritta con il codice che ho postato prima e in un campo ho per esempio scritto "Ciao mamma" nella pagina dopo la variabile che il mio script recupera è solo più "Ciao" e riconosce come vuote tutte le variabili che trova dopo. Se invece il campo contiene "suprcalifragilistichespiralidoso" nella pagina dopo la variabile è ancora quella e le vengono recuperate anche le variabili dopo, fino a quando non incontra uno spazio.

    Originariamente inviato da Inoki
    codice:
    <a href=edit.php?Id=<?PHP echo $row['Id']; ?>&Nome=<?PHP ...eccec
    Non va questo. Come l'avevo scritto io mi va all'id che voglio, con la tua riga di comando mi da un link che invece di chiamarsi Edit si chiama &Id=&Nome= ecc che punta a una pagina che non esiste e che non contiene l'id che voglio io..

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.