Newsgroup: it.comp.www.php
Titolo: Un piccolo (grande) aiuto....

Premetto che sono un novizio del php.
Ho fatto qualche lavoretto interessante in asp + access ma, più per
curiosità (se ne parla molto bene) vorrei passare a php + mysql per gestire
in modo dinamico qualche piccolo sito.
Uno dei primi problemi che incontro è quello di testare le pagine in locale.
Ho installato, apparentemente senza problemi, php 4.1.2 su IIS (WinXP pro).
Dico "apparentemente senza problemi" in quanto phpMyAdmin 2.2.5 mi funziona
menissimo,
riesco a creare databases e a gestirli.
I problemi sorgono quando creo le pagine...
Di seguito riporto il codice della pagina login.php che contiene
l'autenticazione dell'utente che si collega al sito.
La pagina viene richiamata con il metodo POST da un form "submit" di
un'altra pagina:
<html>
<head>
<title>Login page</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body text="#0099FF">
<?php
$connessione = mysql_connect("localhost", "root", "") or die ("Errore MySql:
".mysql_error());
mysql_select_db("miodatabase", $connessione);
$sql = "SELECT nomeute FROM utenti WHERE username='$userid' AND
password='$passw'";
$query = mysql_query($sql);
$num = mysql_numrows($query);
if ($num == 1) {
echo "COLLEGAMENTO effettuato con successo<br>";
echo "Utente riconosciuto<br>";
else if ($num == 0) {
echo "Non sei stato riconosciuto<br>"; }}
mysql_close($connessione);
?>
</body>
</html>
premetto che la pagina "login.php" viene richiamata dallo stesso frame della
pagina di richiesta dati e dovrebbe restituire il risultato nello stesso
frame.
Dico "dovrebbe" in quanto non mi restituisce nulla !!!!!
Neanche un'errore e visualizzando il codice HTML della pagina si visualizza
il listato di cui sopra e non il suo risultato.
Presumo sia un problema di IIS+php, ma allora perche phpMyAdmin funziona
benissimo ?
Vi chiedo aiuto....per non tornare ad asp!!!!!!
grazie.

 wrote in message
news:SHXU8.106873$j65.2...@twister1.libero.it...

$query = mysql_query($sql) or die(mysql_error());
mysql_query (anche mysql_select_db) non ti da un errore se la query non li
piace. Lo devi gentilmente chiedere, se no: "muto e'".

Vorrei darti un piccolo consiglio, ovviamente soggettivo, ma fai un piccolo 
sforzo in più ed installati apache.
Se usi phptriad hai: apache, php, mysql , perle phpMyAdmin, tutto 
l'occorrente per iniziare e non devi configurare nulla!
Ciao

invece di scrivere "or die" metti l'operazione dentro un if
if($connessione = mysql_connect......){
//in caso che ottieni il socket fai determinate cose
}else{
//in caso che non ottierne il socket segnalalo
}
è una sintassi + rompiballe eheeh però è molto buona per debuggare il 
codice... non so se hai esperienza in C ma la sintassi dell'if di prima 
ti permette di eseguire l'operazione e in base al risultato vedere se è 
andata a buon fine... in C = è diverso da ==
la sintassi di prima cmq utilizzala in quasi tutti i casi, cioè socket, 
collegamento ad un database e creazione di un array con i dati di una 
query, così gestisci gli errori molto comodamente... poi vedi tu.
cmq se hai bisogno di chiarimenti chiedi pure...
Ad ogni modo intsllati davvero apache, da meno problemi e poi così ti 
abitui ad utilizzare un web server che se vuoi stare sul sicuro dovrai 
utilizzare anche sui siti che creerai in internet.