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

    riempire una variabile con caretteri blank

    Ciao a tutti!

    avrei bisogno di un aiuto..

    prelevo dei dati da un form tramite il $_POST, ora vorreti che se il campo $_POST['indirizzo'] (dove a video ho definito che possono inserire massimo 30 caratteri) viene lasciato vuoto:

    $ind = $_POST['indirizzo'];

    pur avendo lasciato a blank il campo nel viedo,
    la variabile $ind contenga " " ovvero lunghezza 30 ma di tutti blanks.

    c'è un modo veloce per fare questa cosa??
    al momento mi viene in mente solo:

    if (trim($_POST['indirizzo'] == ""){
    $ind = " ";
    }

    ma avendo un form con 50 campi non vorrei fare 50 if!

    grazie mille
    Ristoranti Roma
    http://www.ristorantiromaristo.it
    info@ristorantiromaristo.it

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    boh...a me non viene in mente nulla...il controllo sui campi devi per forza farlo uno ad uno...

    per velocizzare potresti fare così:

    Codice PHP:
    //ti copi tutti i dati di $_POST in un tuo array
    $dati $_POST;
    //ti crei un array con tutti i campi che vuoi verificare
    $da_verificare = array('campo1','campo2','campo3','campo4');

    //fai un ciclo su $da_verificare e controlli un campo alla volta
    $n sizeof($da_verificare);
    for (
    $i=0$i<$n$i++)
    {
       if (
    trim($dati[$da_verificare[$i]] == "")
       {
          
    $dati[$da_verificare[$i]] = " ";
       }

    che te ne pare?
    Jekkil

  3. #3
    Grazie della risposta!

    il problema è che la lunghezza dei caratteri da riempire non è sempre la stessa! varia a seconda del campo del form!

    per esempio l'indirizzo devo riempirlo con 30 blank, mentre la provincia con 2 blank e cosi via...
    Ristoranti Roma
    http://www.ristorantiromaristo.it
    info@ristorantiromaristo.it

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    potresti usare un array associativo,

    Codice PHP:
    //ti copi tutti i dati di $_POST in un tuo array
    $dati $_POST;
    //ti crei un array con tutti i campi che vuoi verificare
    //la chiave identifica il campo, il valore il numero di caratteri
    $da_verificare = array('campo1' => 4,'campo2' => 10,'campo3' => 20,'campo4' => 5);

    //fai un ciclo su $da_verificare e controlli un campo alla volta
    $n sizeof($da_verificare);

    foreach (
    $arr as $key => $value)
    {
       if (
    trim($dati[$da_verificare[$i]] == "")
       {
           
    //crei la stringa vuota
           
    $dati[$da_verificare[$i]] = str_repeat(" "$value);
       }

    Jekkil

  5. #5
    Questa mi piace!

    grazie dell'aiuto..
    ora però mi è sorto cmq un problema

    supponiamo che l'idnirizzo sia lungo 30 caretteri, ed io ne inserisco solo 20, devo cmq passare un campo con 20 caretteri più + 10 blank (che non rientrerebbe nella if sul controllo del campo diverso da blanks)
    Ristoranti Roma
    http://www.ristorantiromaristo.it
    info@ristorantiromaristo.it

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    ma a questo punto ti faccio una domanda.

    Perchè se hai un campo con 20 caratteri, ne dovresti aggiungere 10 blank?
    Jekkil

  7. #7
    ciao

    guarda ho risolto usando quello che mi hai postato, aggiungendo con la str_replace dei " " fino a coprire la lunghezza totale!

    Grazie dell'aiuto!!
    Ristoranti Roma
    http://www.ristorantiromaristo.it
    info@ristorantiromaristo.it

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    bene! però a parte questo, se mi rispondi ti posso dare qualche dritta
    Jekkil

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.