Newsgroup: it.comp.www.php
Titolo: Risultati in funzione

Ciao a tutti ragazzi,
ho una pagina che ha un include e dentro questo file include ho questa
funzione;
function modify_user($id){
global $titolo,$nome,$cognome, $indirizzo,
$cod_fiscale,$username,$password ,$email;
	$sql = "SELECT * FROM TBAnagrafica WHERE id='$id'";
	$result = mysql_query($sql);
    $numero = mysql_num_rows($result);
	echo "<BR>numero:  $numero<BR>";
  if ($numero > 0){
			$row_rs = mysql_fetch_array($result);
			$titolo =$row_rs['titolo'];
			$nome = $row_rs['nome'];
			$cognome = $row_rs['cognome'];
			$indirizzo = $row_rs['indirizzo'];
			$cod_fiscale = $row_rs['cod_fiscale'];
			$data_nascita= $row_rs['data_nascita'];
			$luogo_nascita =$row_rs['luogo_nascita'];
			$professione = $row_rs['professione'];
			$disciplina = $row_rs['disciplina'];
			$via_privato = $row_rs['via_privato'];
			$civico_privato = $row_rs['civico_privato'];
			$localita_privato = $row_rs['localita_privato'];
			$civico_privato = $row_rs['civico_privato'];
			$prov_privato = $row_rs['prov_privato'];
			$cap_privato = $row_rs['cap_privato'];
			$telefono_privato = $row_rs['telefono_privato'];
 
	}else{
		echo '<div align="center">Errore</div>';
	}
}
La mia domanda č se metto questi risultati della query in varibili globali
, non me li dovrebbe far stampare nella pagina...??
Il mio intento quindi č, una volta chiamata la funzione
modify_user($id);
stamparmi i risultati della query ,ma proprio non ci riesco, dove sbaglio?
Ciao a tutti e buona giornata
GIuseppe
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 
l'approccio e' sbagliato, ma modify_user cosa dovrebbe fare esattamente,
modificare una riga e stampare i nuovi valori o solamente stampare detta
riga?

 riga?
Ciao,
praticamente modify_user no fa altro che farmi una quesry passandogli l'id
e quindi mettermi nei vari input i risultati.
Perchè mi dici che l'approccio è sbagliato?
Grazie Giuseppe


 
credo che ti converrebbe ritornare un array invece di usare global
renderesti il codice piu' pulito.. oltretutto manca anche una gestione
degli errori (almeno un minimo credo sia necessaria) e comunque ti
consiglio di scegliere con piu' criterio i nomi delle funzioni, se qualcuno
dovesse leggere il tuo codice assumerebbe che la funzione modify_user debba
modificare i dati di un utente (io avevo assunto questo) mentre invece la
funzione dovrebbe solo ricavare i dati di un utente..
ti ho scritto una funzione che forse ti puo' aiutare (non testata) 
ho assunto che l'id dovesse essere numerico
// array xor string get_user_info(int id, resource identifier);
function get_user_info($id, $rl)
{
 
 if (!is_resource($rl))
 {
  return '<b>Risorsa db non valida.</b>';
 }
 
 if (!is_numeric($id = intval($id)))
 {
  return '<b>Id non numerico.</b>';
 }
 
 $result = mysql_query("SELECT * FROM TBAnagrafica WHERE id='$id' LIMIT
0,1", $rl);
 
 if (!is_resource($result))
 {
  return '<b>Query fallita (' . mysql_errno() . ': ' . mysql_error() .
').</b>';
 }
 return mysql_fetch_assoc($result);
}
 
$id = 10;
$rl = mysql_connect(.. , .. , ..);
mysql_select_db(.., $rl);
$info = get_user_info($id, &$rl);
if (!is_array($info))
{
 echo '<br />Errore: ' . $info . '<br />';
}
else
{
 printf($info);
}
fammi sapere..