Salve a tutti...
è da un po di giorni che ci giro intorno senza venirne fuori...
ho un database con le seguenti tabelle :
è praticamente un sistema di gestione contatti e clienti con altre tabelle ma il problema è su queste due...codice:CREATE TABLE IF NOT EXISTS Clienti ( `codcliente` int(5) PRIMARY KEY, `indirizzo` varchar(50) NOT NULL, `email` varchar(50) NOT NULL, `città` varchar(50), `codfiscale` varchar(16) NOT NULL, `nome` varchar(50) NOT NULL, `cognome` varchar(50) NOT NULL, `datanascita` date, `part_iva` int(50), `iban` varchar(50) )ENGINE=InnoDB DEFAULT CHARSET=utf8 CREATE TABLE IF NOT EXISTS `AccessoInternet` ( codcliente int(5), username varchar(50) NOT NULL, password varchar(50) NOT NULL, tipo char(1) NOT NULL, FOREIGN KEY (codcliente) REFERENCES Clienti(codcliente) ON UPDATE CASCADE )ENGINE=InnoDB DEFAULT CHARSET=utf8;
io ora vorrei recuperare i dati di tutti i campi ricercando un cliente per cognome con uno script di ricerca...e vorrei che venissero fuori anche i campi della tabello accessointernet..che ha chiave esterna in clienti...tutto normale sembrerebbe...
ho fatto uno script che inserisco direttamente nella pagina...
adesso praticamente con questo script nel form inserisco il cognome da ricercare e mi stampa il tutto....solo che mi funziona con un solo cliente...che ha codcliente=5...con tutti gli altri no e non capisco il perchè...Codice PHP:<form action='clienti.php' method='GET'>
<span style="margin-left:5px">[b]Ricerca[/b]</span>
<span style="margin-left:5px"><input type='text' name='cerca'></span>
<span style="margin-left:5px"><input type='submit' value='Cerca'>
</form>
<div id="contenuto_centro">
<?php
include ('config_db.php');
mysql_select_db('progetto', $connessione) or die ('Errore durante la selezione del db');
$cerca = $_GET['cerca'];
if ( $cerca == TRUE && $cerca != "" ) {
if ( strlen($cerca) >= 2 ) {
$cerca = mysql_escape_string(stripslashes($cerca));
$query1 = "SELECT codcliente FROM clienti WHERE cognome LIKE '%$cerca%'";
$ris = mysql_query($query1) or die (mysql_error());
while($riga= mysql_fetch_row($ris)) {
$codice_ut= $riga[0];
$query = "SELECT * FROM clienti c NATURAL JOIN accessointernet a WHERE c.codcliente='".$codice_ut."'";
$risultato = mysql_query($query) or die (mysql_error());
$risposta = mysql_query($query) or die ("Utilizza termini più specifici!");
$dentro_la_query= mysql_fetch_assoc($risposta);
if ( $dentro_la_query == TRUE ) {
while($row= mysql_fetch_assoc($risultato)) {
$codice = $row['codcliente'];
$nome = $row['nome'];
$cognome = $row['cognome'];
$contratto = $row['contratto'];
$email = $row['email'];
$indirizzo = $row['indirizzo'];
$citta = $row['citta'];
$codicef = $row['codfiscale'];
$datan = $row ['datanascita'];
$iban = $row['iban'];
$piva = $row['part_iva'];
$user = $row['username'];
$password = $row['password'];
// stampiamo i nostri dati
echo "<table border='1'>
<tr>
<th>Codice</th>
<th>Nome</th>
<th>Cognome</th>
<th>Email</th>
<th>Indirizzo</th>
<th>Città</th>
<th>Codice Fiscale</th>
<th>Data di Nascita</th>
<th>Iban</th>
<th>Partita Iva</th>
<th>User</th>
<th>Password</th>
</tr>";
echo "<tr>";
echo "<td>" . $codice . "</td>";
echo "<td>" . $nome . "</td>";
echo "<td>" . $cognome . "</td>";
echo "<td>" . $email . "</td>";
echo "<td>" . $indirizzo . "</td>";
echo "<td>" . $citta . "</td>";
echo "<td>" . $codicef . "</td>";
echo "<td>" . $datan . "</td>";
echo "<td>" . $iban . "</td>";
echo "<td>" . $piva . "</td>";
echo "<td>" . $user . "</td>";
echo "<td>" . $password . "</td>";
echo "</tr>";
}
}
}
}
}
?>
Potete dirmi dove sbaglio???GRAZIE![]()

Rispondi quotando