LAMP non riconosce script php-mysql

  • Creatore Discussione Creatore Discussione Dars89
  • Data di inizio Data di inizio

Dars89

Nuovo Utente
18 Dic 2012
3
0
0
Ho installato su Ubuntu (12.04 LTS) LAMP in locale.
Gli script PHP semplici vengono eseguiti senza problemi, a differenza di quelli che prevedono la connessione a MySQL (correttamente installato). Digito nel browser correttamente la posizione dello script PHP-MySQL. Nella pagina non
mi appare nessun errore, ma del risultato dello script neanchè l'ombra (schermata bianca). Lo stesso problema c'è lo con Wordpress.

Ecco il codice di uno degli script che LAMP non mi esegue:
PHP:
<html>
<head>
<title></title>
</head>
<body>
<table border="2">
<tr><td>Nome</td><td>Cognome</td><td>Email</td></tr>
<?php
$db_user = 'root';
$db_password = 'password_utente';
$db_host = 'localhost';
//password corretta non la inserisco per motivi di privacy

$db = 'newsletter';

$link = mysql_connect("$db_host","$db_user","$db_pass") or die
("Errore connessione a MySQL: " . mysql_error()); 

mysql_select_db($db) or die("Errore apertura database: " . mysql_error()); 

$strsql = "SELECT nome, cognome, email FROM iscritti";

$rs = @mysql_query("$strsql",$link) or die 
("Errore esecuzione query: " . mysql_error());

while ($riga = mysql_fetch_array($rs)) { 
$str_nome = $riga['nome']; 
$str_cognome = $riga['cognome'];
$str_email = $riga['email'];
echo "<tr><td>$str_nome</td><td>$str_cognome</td><td>$str_email</td></tr>";
?>
</table>
</body>
</html>

Cosa ho sbagliato?
 
Ultima modifica:
Innanzitutto rimuovi l'operatore di silenzio (@), poi chiudi il while e passa a mysqli

PHP:
<html>
<head>
<title></title>
</head>
<body>
<table border="2">
<tr><td>Nome</td><td>Cognome</td><td>Email</td></tr>
<?php
$db_user = 'root';
$db_password = 'password_utente';
$db_host = 'localhost';
//password corretta non la inserisco per motivi di privacy

$db = 'newsletter';

$link = new mysqli($db_host,$db_user,$db_password,$db);

$strsql = "SELECT nome, cognome, email FROM iscritti";

$rs = $link->query($strsql) or die($link->error);

while ($riga = $rs->fetch_array()) { 
$str_nome = $riga['nome']; 
$str_cognome = $riga['cognome'];
$str_email = $riga['email'];
echo "<tr><td>$str_nome</td><td>$str_cognome</td><td>$str_email</td></tr>";
}
?>
</table>
</body>
</html>

Se vuoi assicurarti che mysql sia istallato prova via console con
PHP:
mysql -V
 

Discussioni simili