[PHP] Errore UPDATE su tabella DB

luigi.paciolla

Utente Attivo
13 Dic 2017
36
0
6
23
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:
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
Il file config.php è questo:
Codice:
<?php
$databaseHost = 'localhost';
$databaseName = 'nome database';
$databaseUsername = 'username database';
$databasePassword = password;
$mysqli = mysqli_connect($databaseHost, $databaseUsername, $databasePassword, $databaseName);
?>
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.
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 ?
 

macus_adi

Utente Attivo
5 Dic 2017
1.313
88
48
IT/SW
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
require_once('config.php');
index.php e config.php si trovano sulla medesima radice. Credo dobbiate controllare le include dei file in quanto il server sta puntando direttamente sulla root.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
146
63
PR
www.borgo-italia.it
ciao
intanto non so se si tratta di un errore di copy/paste, ma metti uno spazio tra il tag php e la funzione
PHP:
<?php require('public_html/db.php');?>
<?php session_start();?>
gia qui vedi la differenza di colore tra il tuo require e quello che ho postato io