Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 32
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833

    valori che vengono aggiunti a variabile

    di nuivi ciao a tutti, in attesa di risposte per l'altro post, vi chiedo
    un'altra cosa. Come mai con queste istruzioni

    <?php
    echo "<form action=\"vam400.php\" method=\"GET\">"

    ."<input type=\"radio\" name=\"$costumerLOGLKN\" value=\"\"> "
    ?>

    e quando lo richiamo

    <?php
    echo "<input type=\"submit\"> "
    ."</form>";

    ?>

    nell'indirizzo mi ritrovo oltre a vam400.php e il nome del link che passo anche dei caretteri strani, es. vam400.php?*SYSMON+=, se vedete mi ha aggiunto un + e un =.

    Mi aggiunge sempre dei + e alla fine un = quindi se il valore che passo e' ACSSI
    mi metto vam400.php?ACSSI+++=
    se metto RMT mi aggiunge
    vam400.php?RMT+++++=

    ho notato solo che e' come se la lunghezza del campo che passo e' per forza di 9 caratteri
    che poi riempe con dei +++= se il valore e' minore di 9.

    Mi spiegate questa?

    Ciao

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833
    up

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    dovresti vedere che cosa contengono $costumerLOGLKN e le altre variabili con cui nomini i campi del form... se hanno una certa qualforma di padding (con quegli odiosi "+") dove vengono generate.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833
    Allora se $costumerLOGLKN contiene ACSSI e solo questo quando lo passo con
    ."<input type=\"radio\" name=\"$costumerLOGLKN\" value=\"\"> "
    mi aggiunge quegli odiosi + e al nono carattere mette sempre un =
    quindi se la variabile contiene ACSSI diventa ACSSI+++= mentre se contiente
    *SYSMON diventa *SYSMON+= e' come se quando la passo la imposto a nove caratteri
    e se minore di nove la riempe con +++=

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    non mi è mai capitata una cosa del genere, quindi se tu fai un echo($costumerLOGLKN); a parte, non nella costruzione del form (tipo:
    codice:
    <script language="javascript">
    alert("<?php echo($costumerLOGLKN);?>");
    </script>
    Ti viene fuori il valore giusto?
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  6. #6
    Il carattere "+" è lo spazio (blank space) codificato per gli URL (urlencoded).
    Se ci fate caso, i caratteri del campo restituito più gli spazi sono sempre 8, il che fa capire che in SQL è stato impostato come campo di tipo CHAR, in questo caso è un CHAR(8).

    Il campo CHAR come già saprete aggiunge degli spazi vuoti al valore fino a riempire la lunghezza massima del campo, che poi nella codifica urlencode vengono sostituiti con il "+".

    Quindi basta un trim() al campo restituito dalla risorsa MySQL:
    Codice PHP:
    // ...query eccetera
    while ($row mysql_fetch_assoc($result)) {
        
    $valore trim($row['nome_campo']);

    ...o eventualmente anche un solo rtrim().
    Emanuele DG
    <?php echo "Proverbio zen(d): vivi ogni giorno come se fosse il ".date('d M Y', time()); ?>
    Intellectual property

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833
    Rispondo con un giorno di ritardo.

    Allora per rispondere a Andrea1979, quando stampo echo($costumerLOGLKN);
    il valore e' giusto, es. solo *SYSMON, dopo l'sql il valore e' giusto.

    Per quanto riguarda il trim che mi ha consigliato emanueledg, funziona ma a "meta'"
    nel senso che lascia lo stesso un = alla fine del campo.

    Ora dovrei capire se e' possibile gestire una situazione del genere:

    Leggo dei record di un file e affianco a ogni record, devo avere un radio button, che se
    selezionato mi dia la possibilita' di premere piu' bottoni (uno alla volta ovviamente)
    che questi mi chiameranno ognuno la propria pagina e a queste pagine vengano
    passati i dati del record che corrispondeva al radio button selezionato.

    E' possibile farlo secondo voi?

    Ciao

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    se il form passa i dati in GET allora "=" è normale:

    codice:
    <form name="mioform" action="miaget.php" method="get">
      Nome: <input type="text" name="nome" />
    
      Cognome: <input type="text" name="cognome" />
    
      <input type="submit" value="submit" />
    </form>
    Produrrà una richiesta:

    http://www.tuosito.com/miaget.php?nome=...&cognome=...


    Per quanto riguarda l'altra richiesta... non si capisce bene: se ai radiobutton dai lo stesso nome, apparterranno allo stesso gruppo e saranno quindi mutualmente esclusivi (ne selezioni solo uno per volta). Non ho capito che ci devi fare dopo
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833
    EOk ma se dovessi passare piu' parametri come faccio?

    echo "<form action=\"vam400.php\" method=\"GET\">"
    ."<input type=\"radio\" name=\"$costumerLOGLKN\" value=\"\"> "

    oltre $costumerLOGLKN devo passare $costumerLOGTRE e $costumerLOGTSM

    come posso fare?

    E secondo te e' possibile assegnare piu' bottoni a questo form? quindi
    mettiamo che dentro costumerLOGLKN ci sia un codice cliente
    e se seleziono il radio button associato a un codice cliente possa fare sia es.
    visualizza dati cliente oppure modifica dati cliente ecc... passandoli pero' sempre quei
    tre dati di prima.

    Ciao

  10. #10
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    I dati in get vengono concatenati:

    http://www.tuosito.com/tuaactionget.....&varn=valoren

    per cui poi li recuperi in $_GET['var1']... $_GET['varn']

    Vorrei vedere la pagina per l'altra domanda. Puoi mettere tutti i pulsanti, radio e checkboxes che vuoi, bisogna vedere come li gestisci dopo. Prova a postare un po' di codice.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.