Newsgroup: it.comp.www.php
Titolo: evitare spam

Salve,
ho una pagina che, a seguito di una ricerca, genera una lista di 
contatti.
Tra i campi da visualizzare c'ï¿œ anche l'indirizzo di posta elettronica.
Volevo utilizzare le librerie grafiche e ho trovato il seguente codice:
<?php 
// create a 100*30 image 
$im = imagecreate(100, 30); // qui dovrï¿œ mettere il mio indirizzo? 
// white background and blue text 
$bg = imagecolorallocate($im, 255, 255, 255); 
$textcolor = imagecolorallocate($im, 0, 0, 255); 
// write the string at the top left 
imagestring($im, 5, 0, 0, "Hello world!", $textcolor); 
// output the image 
header("Content-type: image/jpeg"); 
imagejpeg($im); 
?> 
che "cosï¿œ com'ï¿œ" funziona ma, quando lo metto all'interno di un while()
non funziona piï¿œ.
Mi fa vedere una sola immagine al centro dello schermo.
Quindi... non vedo la parte html della pagina, non vedo le righe 
(record)...
Suggerimenti?
Grazie
-- 
distinti saluti,
Salvatore Paci
www.salvatorepaci.com

 imagejpeg($im); 
Stai dicendo al browser che l'output (Content-type) della tua pagina php
ï¿œ una jpeg, e come tale te la farï¿œ vedere. E' come quando apri
un'immagine direttamente nel browser. Quindi non puoi usare il codice
cosï¿œ com'ï¿œ in un while perchï¿œ di output jpeg in una stessa videata (di
tipo - Content-type - jpeg) ce ne puï¿œ essere soltanto uno.
Quello che ti serve ï¿œ una pagina standard php, con output html
(Content-type) che contiene il while.
Lo stesso codice che hai postato lo puoi tenere e rendere dinamico.
Ovvero passi un parametro alla tua paginetta php, ad es.
dumpimage.php?imgId=666
che ti sputa fuori una jpeg esattamente come nel codice che hai postato.
E poi dentro la php che cicla
while(..)
{
	$varImgId= .... ;
	echo "<img src='dumpimage.php?imgId=$varImgId' />\n";
}
saludos,
M.

 }
-----------
Innanzitutto grazie.
Ma, in questo modo, me le fa vedere tutte le immagini?
Perchï¿œ se nel campo di ricerca scrivo "pi" mi fa vedere "pippo", "piero", 
"piccino", ecc. ecc.


 "piccino", ecc. ecc.
--------
Mi sono reso conto di non essere stato abbastanza chiaro. :(
A seconda della ricerca, vorrei che la pagina mi facesse vedere dei righi 
con tutte le immagini relative ai contatti che soddisfano la richiesta 
dell'utente (che digita un testo di ricerca).
In questo modo potrei avere n immagini.
Ma, mi chiedo, se passo un parametro alla pagina di output... non mi farï¿œ 
vedere una sola immagine?


 vedere una sola immagine?
Forse sono io che non mi sono spiegato bene. La pagina di output
immagine accetta un parametro e deve far vedere una sola immagine
(content type jpeg). E va bene cosï¿œ. La chiamo dumpimage.php, parametro
idImage.
Il paremtro idImage ti serve per calcolare dentro la dumpimage.php
quello da passare alla funzione imagestring. Lo puoi fare con un array,
un xml, una chiamata al db, quello che vuoi... Basta che il metodo non
sia rintracciabile dall'hacker.
Poi te ne serve un'altra di pagina, che chiamo searchresult.php, che
cicla i risultati di una qualsiavoglia funzione (ricerca?) e per
*ognuno* di essi sputa fuori un record: una riga di una tabella, un div,
quello che vuoi...
Dentro ciascuna riga ci metti un tag <img src/> con la chiamata alla
dumpimage.php passandogli il giusto parametro.
Ad esempio, il risultato di una ricerca, visualizzato dalla
searchresult.php, potrebbe essere (tralasciando tutti i crismi dell'html):
<html>
<body>
 <table>
  <tr><td>Pippo</td><td><img src="dumpimage.php?idImage=1"></td></tr>
  <tr><td>Pluto</td><td><img src="dumpimage.php?idImage=2"></td></tr>
  <tr><td>Paperino</td><td><img src="dumpimage.php?idImage=3"></td></tr>
 </table>
</body>
</html>
In pratica la dumpimage.php ï¿œ una "servlet".
Spero sia chiaro.
saludos,
M.

 M.
---------
Okay, grazie 1.000
