Ciao,
questo php5 mi sta creando un po di problemi, sono riuscito finalmente a capire perchè il mio sito non funziona più bene dopo che è stato spostato su un server con php versione 5 (in fase di imput, per la lettura dei dati funziona).
Ho scoperto che php5 è instabile, ha problemi se nel codice apro e chiudo il tag php, come posso risolvere? Faccio un esempio:
così funziona:
if(mysqli_connect_errno()){
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
if (isset($_POST['username']) && isset($_POST['password'])) {
$aut = "SELECT * from a_login where username='" . $_POST['username'] . "' AND password='" . $_POST['password'] . "' ";
così invece non funziona:
if(mysqli_connect_errno()){
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
?>
<?php
if (isset($_POST['username']) && isset($_POST['password'])) {
$aut = "SELECT * from a_login where username='" . $_POST['username'] . "' AND password='" . $_POST['password'] . "' ";
questo è il codice completo:
<?php
session_start();
//credenziali
$db_name = '000';
$db_host = '000';
$db_uid = '000';
$db_pass = '000';
//apro la connessione con MySqli -> host, user, psw, db
$conn = mysqli_connect($db_host, $db_uid, $db_pass, $db_name);
//controllo connessione
if(mysqli_connect_errno()){
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
?>
<?php
if (isset($_POST['username']) && isset($_POST['password'])) {
$aut = "SELECT * from a_login where username='" . $_POST['username'] . "' AND password='" . $_POST['password'] . "' ";
$rs_aut = mysqli_query($conn, $aut);
$row_aut = mysqli_fetch_array($rs_aut, MYSQLI_ASSOC);
if (mysqli_num_rows($rs_aut) == 0) {
$msg_login = "utente non riconosciuto1";
}
if ($row_aut['attivo'] == "no") {
$msg_login = "non hai confermato la registrazione";
} else {
$_SESSION['idlogin'] = $row_aut['id_login'];
}
if ($_SESSION['idlogin']) {
$sql_ses = "SELECT * from a_login where id_login = '" . $_SESSION['idlogin'] . "' ";
$rs_ses = mysqli_query($conn, $sql_ses);
$row_ses = mysqli_fetch_array($rs_ses, MYSQLI_ASSOC);
if (mysqli_num_rows($rs_ses) == 0) {
unset($_SESSION['idlogin']);
}
if (mysqli_num_rows($rs_aut) == 0) {
$msg_login = "utente non riconosciuto2";
}
if ($row_ses['attivo'] == "no") {
$msg_login = "non hai confermato la registrazione";
} elseif ($row_ses['admin'] == "no") {
header("Location: ../utente/utente_main.php");
} elseif ($row_ses['admin'] == "si") {
header("Location: ../admin/admin_main.php");
}
}
}
?>