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

    Array per termini consecutivi

    Si può creare un array di termini consecutivi ?


    Mi spiego meglio se faccio così :

    Codice PHP:
    $testo = array('senza''grassi'); 
    Oppure

    Codice PHP:
    $testo = array('senza grassi'); 
    i termini sono separati , e lui vede sia la parola SENZA che GRASSI

    Invece non deve vederli separati ma uniti come se fosse un'unica frase

    Non attaccati naturalmente ( SENZAGRASSI ) !


    Qualche suggerimento ?




    .

  2. #2
    Ma in che senso? Se metti una frase tra gli apici non ti crea due elementi separati dell'array...

    Questo codice infatti ti stampa "senza grassi".

    Codice PHP:
    <?
        $testo 
    = array('senza grassi');
        
        print(
    $testo[0]);
    ?>

  3. #3
    Con un echo funzionerebbe senza problemi , ma non devo mostrare a video i risultati
    , devo eseguire un controllo su quello che l'utente ha digitato nel form e se ad esempio digita SENZA GRASSI posso mostrare un messaggio o far partire un redirect


    Codice PHP:
    if(isset($_POST['invio'])){
    $chiave=$_POST['chiave'];

    $controllo=0;

    $array_control=array('senza grassi');

    $array=explode(' ',$chiave);
    for (
    $x=0$x<sizeof($array); $x++){

                for(
    $a=0;$a<sizeof($array_control);$a++){
                if(
    $array[$x]==$array_control[$a]){$controllo++;}
            }
    }
    // ECC ...... 

    Grazie comunque , Ciao !




    .

  4. #4
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520

    Codice PHP:
    if($_POST['testo']=='SENZA GRASSI')
    {
       
    //fai quello che devi fare


  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    anch'io non ho ben capito: tu hai una lista di parole in partenza o una frase? e cosa vuoi ottenere?

  6. #6
    Anche a me è venuto il prurito , comunque non funge


    anch'io non ho ben capito: tu hai una lista di parole in partenza o una frase? e cosa vuoi ottenere?
    Ho un breve elenco di parole e coppie di parole ( piccole frasi )

    Devo solamente eseguire un controllo su quello che l'utente può aver digitato in un form , se questi ad esempio ha digitato "senza grassi" , devo rimandare ad altra pagina , tutto quì .

    Il codice è perfettamente funzionante con singole parole , ma con due le considera separatamente

    Spero di aver chiarito il problema


    Ciao



    .

  7. #7
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    potresti postare tutto il codice che hai fatto? sia la parte del form che quella dei controlli? così possiamo vedere cosa non va

  8. #8
    Eccolo , breve è coinciso ...

    paginauno.php

    Codice PHP:
    <html>
    <head>
    </head>
    <body>
    <form method="post" action=paginauno.php> 
    <input type=text size="50" name=chiave>
    <input type="submit" name="invio" />

    </form>
    <?php
    if(isset($_POST['invio'])){
    $chiave=$_POST['chiave'];
    $controllo=0;

    $array_control=array('grassi');

    $array=explode(' ',$chiave);
    for (
    $x=0$x<sizeof($array); $x++){

                for(
    $a=0;$a<sizeof($array_control);$a++){
                if(
    $array[$x]==$array_control[$a]){$controllo++;}
            }
    }

    if(
    $controllo>0){$stringa=trovato;}else{$stringa=$chiave;}
    echo 
    "$stringa";
    }else{echo 
    'inserire un carattere';}
    ?>

    </body>
    </html>


    Ciao


    .

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    mah... io direi che se hai in $parole le tue "parole" (anche frasi) e in $testo ciò che ha digitato l'utente, puoi fare:

    CASO 1) l'utente digita UNA cosa
    Codice PHP:
    if (in_array($testo$parole)) {
     ...(
    trovato)...
    } else {
     ...(
    non trovato)...
    }; 
    oppure

    CASO 2) l'utente digita più COSE
    Codice PHP:
    $trovate = array();
    foreach (
    $parole as $parola) {
      if (
    strpos($parola$testo)) $trovate[$parola]++; // in realtà è meglio iniz. a 0, prima
    }; 

  10. #10
    Scusa ma non capisco come intendi applicarlo allo script


    .

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.