Salve, sono di nuovo qui! In pratica, abbiamo deciso di hostare il sito online con un servizio gratuito. In locale il sito funziona perfettamente, invece messo online da errori mai visti. Come prima pagina c'è la index.php che dovrebbe rimandare alla pagina di login, invece compaiono questi errori:
Il file config.php è questo:
Ovviamente tutti i campi sono correttamente compilati
Invece provando a inserire direttamente l'indirizzo, quindi ..../login.php la pagina la visualizzo correttamente ma quando vado ad inserire le credenziali e a cliccare su Login mi compaiono questi errori.
Il codice PHP del Login è questo:
Accedendo a phpmyadmin ho notato che il tipo di server è MariaDB, invece in locale è MySQL. Potrebbe essere questo uno dei problemi ?
Codice:
Warning: include_once(public_html/config.php): failed to open stream: No such file or directory in /storage/ssd4/844/4009844/public_html/index.php on line 3
Warning: include_once(): Failed opening 'public_html/config.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in /storage/ssd4/844/4009844/public_html/index.php on line 3
Warning: Cannot modify header information - headers already sent by (output started at /storage/ssd4/844/4009844/public_html/index.php:1) in /storage/ssd4/844/4009844/public_html/auth.php on line 4
Codice:
<?php
$databaseHost = 'localhost';
$databaseName = 'nome database';
$databaseUsername = 'username database';
$databasePassword = password;
$mysqli = mysqli_connect($databaseHost, $databaseUsername, $databasePassword, $databaseName);
?>
Invece provando a inserire direttamente l'indirizzo, quindi ..../login.php la pagina la visualizzo correttamente ma quando vado ad inserire le credenziali e a cliccare su Login mi compaiono questi errori.
Codice:
Notice: Undefined variable: con in /storage/ssd4/844/4009844/public_html/login.php on line 20
Warning: mysqli_real_escape_string() expects parameter 1 to be mysqli, null given in /storage/ssd4/844/4009844/public_html/login.php on line 20
Notice: Undefined variable: con in /storage/ssd4/844/4009844/public_html/login.php on line 22
Warning: mysqli_real_escape_string() expects parameter 1 to be mysqli, null given in /storage/ssd4/844/4009844/public_html/login.php on line 22
Notice: Undefined variable: con in /storage/ssd4/844/4009844/public_html/login.php on line 26
Warning: mysqli_query() expects parameter 1 to be mysqli, null given in /storage/ssd4/844/4009844/public_html/login.php on line 26
Warning: mysqli_error() expects exactly 1 parameter, 0 given in /storage/ssd4/844/4009844/public_html/login.php on line 26
Il codice PHP del Login è questo:
PHP:
<?phprequire('public_html/db.php');?>
<?phpsession_start();?>
<?php
// If form submitted, insert values into the database.
if (isset($_POST['username'])){
$username = stripslashes($_REQUEST['username']); // removes backslashes
$username = mysqli_real_escape_string($con,$username); //escapes special characters in a string
$password = stripslashes($_REQUEST['password']);
$password = mysqli_real_escape_string($con,$password);
//Checking is user existing in the database or not
$query = "SELECT * FROM `users` WHERE username='$username' and password='".md5($password)."'";
$result = mysqli_query($con,$query) or die(mysqli_error());
$rows = mysqli_num_rows($result);
if($rows==1){
$_SESSION['username'] = $username;
header("Location: index.php"); // Redirect user to index.php
}else{
echo "<div class='form'><h3>Username o Password errati.</h3><br/>Clicca qui per effettuare di nuovo il <a href='login.php'>Login</a></div>";
}
}else{
?>
Accedendo a phpmyadmin ho notato che il tipo di server è MariaDB, invece in locale è MySQL. Potrebbe essere questo uno dei problemi ?