Ciao,
sto cercando di costruire un programmino di due pagine, che mi permetta di linkare i risultati di una ricerca su database mysql e visualizzare i dati appartenenti a quel record.
Esempio: tramite la pagina cerca.php effettuo una ricerca, che mi restituisce delle righe, ogni una delle quali ho reso linkabile l'id. A questo punto si apre la pagina profilo.php, ma la pagina è bianca. Ho settato a debug on il php.ini ma non visualizzo nulla.
Potreste aiutarmi?
cerca.php
Codice PHP:
<?php
if ($_POST['search']){
if (!empty($_POST['keywords'])) {
$searchStr = $_POST['keywords'];
if (ereg("^[A-Za-z0-9_]+$", $searchStr)) {
mysql_connect($host,$user,$password)or die("non riesco a connettermi");
mysql_select_db($database)or die("non riesco selezionare il database");
print "Risultati per [b]<font color=#FF0000> \"$searchStr\"</font>[/b]
";
$keys = explode(" ", $searchStr);
for ($x = 0; $x < count($keys); $x++) {
$querystr = "SELECT * FROM tabella WHERE id = \"$keys[$x]\" OR id LIKE \"%$keys[$x]%\"";
$result = mysql_query($querystr);
if ($frow = mysql_fetch_array($result)) {
$found = true;
echo "<table><tr>
<th>ID</th><th>Nome</th><th>Cognome</th><th>Luogo nascita</th><th>Disciplina</th><th>Link</th>
</tr>";
do {
echo "<tr>
<td>" . $frow["id"] . "</td><td> ".$frow["nome"]. "</td><td>".$frow["cognome"]."</td><td>" . $frow["luogonascita"] ."</td><td>" . $frow["disciplina"] ."</td><td>
<a target=\"blank\" href=\"https://dominio.tld/profilo01.php?id=".$frow["id"]."\">Link</a></td>
</tr>";
} while ($frow = mysql_fetch_array($result));
echo "</table>";
}
}
if (!$found) {
print("Nessun risultato
");
}
}
else {
print("La tua stringa di ricerca contiene caratteri illegali
");
}
}
else {
print("Devi entrare un stringa di ricerca
");
}
}
?>
la pagina dei dettagli l'ho chimata profilo01.php
Codice PHP:
<?
$id=$_POST['id'];
$db="db";
$link = mysql_connect('localhost', 'user' , 'psw');
if (! $link) die("Collegamento inesistente con il database");
mysql_select_db($db , $link) or die("Non riesco a collegarmi al db $db: ".mysql_error());
$query=" SELECT * FROM tabella WHERE id='$id'";
$result=mysql_query($query);
$num_rows=mysql_num_rows($result);
$i=0;
while ($i < $num_rows) {
$nome=mysql_result($result,$i,"nome");
$cognome=mysql_result($result,$i,"cognome");
$luogonascita=mysql_result($result,$i,"luogonascita");
$disciplina=mysql_result($result,$i,"disciplina");
?>
<?php echo $nome; ?>
<?
++$i;
}
?>
Mi restituiace una pagina vuota
Come posso risolvere questo problema?
Grazie