|
||||
|
|||||||
![]() |
|
|
Strumenti della discussione | Modalità di visualizzazione |
|
|
#1 (permalink) |
|
Neofita della community ![]()
67 Messaggi
![]() |
visualizare le ricorrenze di una sottostringa in una stringa in grassetto o eviden
Salve,
ho un nuovo problema devi visualizzare una stringa prelevata da una tabella di un database con le ricorrenze di una sottostrina ( scelta attraverso una select) in grassetto o evidenziato. esempio: la stringa letta è :" dddghd pippo hfjakah pippo cjhccj<pippo" la sottostringa cercata è "pippo" mi deve visualizzare la prima stringa in quersto modo: dddghd pippo hfjakah pippo cjhccj<pippo Il codice php e' il seguente: Codice PHP:
grazie Rita ![]() |
|
|
|
|
|
#2 (permalink) |
|
Neofita della community ![]()
50 Messaggi
![]() |
mmm... sembrerebbe giusto.. io però proverei una cosa di questo tipo
Codice PHP:
prova, se non viene dicci che errore/problema ti da... |
|
|
|
|
|
#4 (permalink) |
|
Neofita della community ![]()
50 Messaggi
![]() |
potrebbe anche essere che ci vadano i monoapici o i doppi apici...
tipo: $a = str_replace("$cognome", "$cognome_grassetto" ,$estratto); non so bene, è una funzione che non ho mai usato. al limite te la puoi creare te una funzione simile, ma proprio se non riesci a risolvere il problema... verrebbe una cosa un pò contorta, tipo: Codice PHP:
per prima cosa con strlen prendo la lunghezza della parola ricercata e della variabile dove viene cercata. il primo for scorre la variabile $estratto e il secondo la variabile cognome. nel secondo for c'è un if che fa un paragone: se la prima cella della variabile $cognome è uguale alla cella $estratto nel punto in cui è arrivata (per via del primo for) allora procede con la cella successiva e le paragona... se per caso le celle non sono uguali esce dal for (perchè j diventa troppo grande) e la variabile $c (controllore) viene incrementata. successivamente si controllerà che se è rimasta a zero la variabile $c (quindi le condizioni del if mostrano che la variabile $cognome è presente in $estratto) si stamperà <b> e si memorizzerà il punto dove chiudere il grassetto (</b>). poi si stampa sempre la variabile $estratto, indipendentemente dal fatto che ci sia il grassetto o meno. e l'ultimo if chiude il grassetto.. questo metodo è il più contorto, ma non mi veniva in mente nient'altro, non conoscendo la funzione replace... spero che riuscirai a mettere tutto a posto, se non ti è chiaro qualcosa sarò felice di darti una mano |
|
|
|
|
|
#5 (permalink) |
|
Neofita della community ![]()
67 Messaggi
![]() |
SALVE,
Funziona in modo parziale. Se c'è la parola Sindaco e la parola Vicesindaco e la parola ricercata e' 'Sindaco' mi evidenzia sia Sindaco che Vicesindaco, e non deve essere così. Come fare? Aspetto Grazie RITA |
|
|
|
|
|
#6 (permalink) |
|
Neofita della community ![]()
50 Messaggi
![]() |
contando che quello script non l'avevo nemmeno provato son molto soddisfatto del risultato
![]() diciamo che lo script funziona in modo parziale perchè questo che hai citato era un caso che non avevo previsto. dovresti fare delle prove ma credo che si possa risolvere sostituendo la riga: if ($c==0) con la riga: if ($c==0 && $estratto[$i-1]==" ") che praticamente dice che oltre al fatto che la $c deve essere uguale a zero pure la cella precedente alla parola cercata deve essere uno spazio. quindi se la parola è vicesindaco, siccome non c'è uno spazio tra la 'e' e la 's' non entrerà nel if, mentre se è vice sindaco, entrerà, siccome c'è lo spazio... credo che così funzioni anche se non son certo che i doppi apici che racchiudono uno spazio lui li legga come spazio... per esempio se non ricordo male il a capo lo vede come \n.. però probabilmente va... facci sapere |
|
|
|
![]() |
«
visualizzare in php file .doc trasformato in pdf
|
Problema dev.login form di registrazione errore php
»
| Strumenti della discussione | |
| Modalità di visualizzazione | |
|
|
Tutti gli orari sono GMT +2. Attualmente sono le 09:49.









Modalità lineare

