altro dubbio sempre sullo script della guida pratica php/mysql presente su html.it:
faccio un file search.php che prende in input una parola (name="chiave)" e invia il tutto con post alla seguente pagina:
<?php
include "top_foot.inc.php";
include "config.inc.php";
echo top();
$chiave=$_POST['chiave'];
$db=mysql_connect ($db_host, $db_user,$db_password);
if ($db==FALSE)
die ("Errore nella connessione col db.");
mysql_select_db($db_name,$db)
or die ("Errore nella selezione del db");
/* PEr prima cosa dovremmo suddividere la stringa nelle chiavi da ricercare.
Supporremo che le diverse chiavi siano separate da virgole.*/
$keys=explode (",",$chiave); /* spezzato la stringa keys in
corrispondenza di ogni virgola, e abbiamo suddivisio i frammenti all'interno
di $keys*/
$query="";
reset ($keys);
while(list(,$parola)=each ($keys))
{
$parola=trim($parola);
if ($parola != "")
query.="titolo LIKE '%$parola%' || testo LIKE '%$parola%' || autore LIKE '%$parola%' ||";
} // while
$query.="0";
$query="SELECT id,titolo,data FROM news WHERE ".$query;
$result = mysql_query ($query,$db);
while($row=mysql_fetch_array($result))
{
echo "<a href=\"view.php?id=$row[id]\">".date("j/n/y",$row[data])." - $row[titolo]</a>
";
} // while
echo foot();
}
Mi da il seguente errore:
Parse error: syntax error, unexpected T_CONCAT_EQUAL in C:\xampplite\htdocs\es\result.php on line 34
sospetto riguardi il ciclo while each (obsoleto , ma in caso come lo si sostituisce con un semplice foreach? ) ma non capisco dove, aiutatemi pls
![]()

Rispondi quotando