[PHP] problema registrazione

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
non va vuol dire poco , da lo stesso errore ? ne da un altro ? o non fa niente ?
posta solo la funzine che da errore
 

ANDREA20

Utente Attivo
25 Giu 2016
145
1
18
27
non va vuol dire poco , da lo stesso errore ? ne da un altro ? o non fa niente ?
posta solo la funzine che da errore
riprova ancora che da sempre lo stesso errore poi nel sesto file da un altro errore sulla
www.civiaggio.it/login/login.php
Warning: mysqli_query(): Empty query in /web/htdocs/www.civiaggio.it/home/login/inc/user.php on line 33

allego il file

PHP:
<?php

/*
* In questo file sono contenute le funzioni utili
* alla gestione degli utenti
*/

// Includo la lista delle funzioni per dialogare con il database
require_once 'database.php';

// Questa funzione si occupa di autenticare un utente
// nel sistema
function authenticateUser($userEmail, $userPassword)
{
    // Apro una connessione con il database
    $connection = getConnection();
  
    // Cerco nel database un utente attivo
    // con la coppia email:password specificata
    $sql = "SELECT user_id
            FROM user
            WHERE
                email = '%s'
            AND
                password = '%s'
            AND
                active = 1";

    // Assegno alla query i parametri da cercare
    $sql = sprintf($sqli, $userEmail, $userPassword);
  
    // Eseguo la query sul database
    $result = mysqli_query($connection, $sql);
  
    // Se si è verificato un errore oppure non ho trovato nessun risultato
    if (false == $result || mysqli_num_rows($result) == 0)
        return false;
  
    // Questa riga contiene le informazioni dell'utente, se trovato nel database  
    $row = mysqli_fetch_assoc($result);

    // Ritorno lo user_id dell'utente
    return $row['user_id'];  
}

// Questa funzione permette di registrare un nuovo utente nel sistema
function registerNewUser($userData)
{
    // Apro una connessione con il database
    $connection = getConnection();

    // Questi sono i dati da inserire nel database
    $userEmail         = $userData['email'];
    $userPassword     = $userData['password'];
    $userName        = $userData['name'];
    $token             = $userData['token'];
  
    // Query per inserire i nuovi dati nel database
    $sql = "INSERT INTO user
                (email, password, name, token)
            VALUES
                ('%s', '%s', '%s', '%s') ";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sql,
                $userEmail,
                $userPassword,
                $mysqli_real_escape_string, ($userName),
                $token);
  
    // Provo ad inserire i dati
    if (false == mysqli_query($connection, $sql))
    {
        return false;
    }
    // se sono riuscito ad inserire i dati,
    // ritorno l'ultimo user_id inserito  
    else
    {
        return mysqli_insert_id($connection);
    }
}

// Questa funzione controlla l'esistenza
// nel database di un utente con uno specifico indirizzo email
function userEmailExists($userEmail)
{
    // Apro una connessione con il database
    $connection = getConnection();
  
    // Conto il numero di utenti registrati con
    // l'indirizzo email specificato
    $sql = "SELECT user_id
            FROM user
            WHERE
                email = '%s' ";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sql, $userEmail);
  
    // Eseguo la query sul database
    $result = mysqli_query($connection , $sql);
  
    // Se non ho trovato utenti oppure se si è
    // verificato un errore
    if (false == $result || mysqli_num_rows($result) == 0)
    {
        return false;
    }
    // Altrimenti vuol dire che ho trovato un utente
    // con l'indirizzo email specificato
    else
    {    
        return true;
    }
}

// Questa funzione cerca i dati di un utente
// in base al token specificato
function userFindByToken($token)
{
    // Apro una connessione con il database
    $connection = getConnection();
  
    // Cerco un utente con un certo token
    $sql = "SELECT *
            FROM user
            WHERE
                token = '%s'";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sql, $token);
  
    // Eseguo la query sul database
    $result = mysqli_query($connection, $sql);
  
    // Se si è verificato un errore oppure non
    // ho trovato nessun utente
    if (false == $result || mysqli_num_rows($result) == 0)
    {
        return false;
    }
  
    // Ritorno i dati dell'utente trovato
    return mysqli_fetch_assoc($result);
}

// Questa funzione cerca i dati di un utente
// in base all'indirizzo email specificato
function userFindByEmail($userEmail)
{
    // Apro una connessione con il database
    $connection = getConnection();
  
    // Cerco un utente con un certo indirizzo email
    $sql = "SELECT *
            FROM user
            WHERE
                email = '%s'";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sqli, $userEmail);
  
    // Eseguo la query sul database
    $result = mysqli_query($connection, $sql);
  
    // Se si è verificato un errore oppure non
    // ho trovato nessun utente
    if (false == $result || mysqli_num_rows($result) == 0)
    {
        return false;
    }
  
    // Ritorno i dati dell'utente trovato
    return mysqli_fetch_assoc($result);
}

// Questa funzione cerca i dati di un utente
// in base ad un userId specificato
function userFindById($userId)
{  
    // Apro una connessione con il database
    $connection = getConnection();
  
    // Cerco un utente con un certo userId
    $sql = "SELECT *
            FROM user
            WHERE
                user_id = %d";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sqli, $userId);
  
    // Eseguo la query sul database
    $result = mysqli_query($connection, $sql);
  
    // Se si è verificato un errore oppure non
    // ho trovato nessun utente
    if (false == $result || mysqli_num_rows($result) == 0)
    {
        return false;
    }
  
    // Ritorno i dati dell'utente trovato
    return mysqli_fetch_assoc($result);
}

// Questa funzione serve per attivare l'account
// di un utente con un certo userId
function userActivate($userId)
{
    // Apro una connessione con il database
    $connection = getConnection();
  
    // Attivo l'utente impostando il campo
    // active a 1
    $sql = "UPDATE user
            SET active = 1, token = NULL
            WHERE
                user_id = %d";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sql, $userId);
  
    // Eseguo la query sul database
    $result = mysqli_query($connection, $sql);
  
    // Se si è verificato un errore oppure nessun utente
    // � stato attivato
    if (false == $result || mysqli_affected_rows($connection) == 0)
    {
        return false;
    }
    // Altrimenti l'utente � stato attivato
    else
    {   
        return true;
    }  
}

// Questa funzione permette di settare il token
// di uno specifico utente, identificato dal suo userId
function userSetToken($token, $userId)
{
    // Apro la connessione al database
    $connection = getConnection();
  
    // Questa è la query di aggornamento
    $sql = "UPDATE user
            SET token = '%s'
            WHERE user_id = %d";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sqli, $token, $userId);
  
    // Eseguo la query
    $result = mysqli_query($connection, $sql);
  
    // Se si è verificato un errore oppure nessun token � stato settato
    // ritorno false
    if (false == $result || mysqli_affected_rows($connection) == 0)
    {
        return false;
    }
    // altrimenti ritorno true
    else
    {
        return true;
    }
}
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
per forza ti da lo stesso errore non hai fatto la modifica che ti ho detto
è sempre uguale
PHP:
// Assegno alla query i parametri da cercare
    $sql = sprintf($sql,
                $userEmail,
                $userPassword,
                $mysqli_real_escape_string, ($userName),
                $token);
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
il messaggio dice che la funzione si aspetta 2 parametri quindi come da documentazione devi passargli anche al connessione
PHP:
mysqli_real_escape_string($connection, $userName),
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
no, non ti sto seguendo
devi modificare la funzione cosi
PHP:
// Questa funzione permette di registrare un nuovo utente nel sistema
function registerNewUser($userData)
{
  // Apro una connessione con il database
  $connection = getConnection();

  // Questi sono i dati da inserire nel database
  $userEmail  = $userData['email'];
  $userPassword  = $userData['password'];
  $userName  = $userData['name'];
  $token  = $userData['token'];
 
  // Query per inserire i nuovi dati nel database
  $sql = "INSERT INTO user
  (email, password, name, token)
  VALUES
  ('%s', '%s', '%s', '%s') ";
 
  // Assegno alla query i parametri da cercare
  $sql = sprintf($sql,
  $userEmail,
  $userPassword,
  mysqli_real_escape_string($connection,$userName),
  $token);
 
  // Provo ad inserire i dati
  if (false == mysqli_query($connection, $sql))
  {
  return false;
  }
  // se sono riuscito ad inserire i dati,
  // ritorno l'ultimo user_id inserito  
  else
  {
  return mysqli_insert_id($connection);
  }
}
}
 

ANDREA20

Utente Attivo
25 Giu 2016
145
1
18
27
// Questa funzione permette di registrare un nuovo utente nel sistema
function registerNewUser($userData)
{
// Apro una connessione con il database
$connection = getConnection();

// Questi sono i dati da inserire nel database
$userEmail = $userData['email'];
$userPassword = $userData['password'];
$userName = $userData['name'];
$token = $userData['token'];

// Query per inserire i nuovi dati nel database
$sql = "INSERT INTO user
(email, password, name, token)
VALUES
('%s', '%s', '%s', '%s') "
;

// Assegno alla query i parametri da cercare
$sql = sprintf($sql,
$userEmail,
$userPassword,
mysqli_real_escape_string($connection,$userName),
$token);

// Provo ad inserire i dati
if (false == mysqli_query($connection, $sql))
{
return
false;
}
// se sono riuscito ad inserire i dati,
// ritorno l'ultimo user_id inserito
else
{
return
mysqli_insert_id($connection);
}
}
}

ho ricopiato tutto il codice che mi hai inserito qui ora da problema di riga Fatal error : Call to undefined funzione getConnection () in /web/htdocs/www.civiaggio.it/home/login/inc/user.php on line 46
http://www.civiaggio.it/login/register.php

 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
getConnection è una funzione del file database.php, devi solo modificare quella funzzione che ti ho postato non tutto il file user.php, probabilemente hai tolto il richiamo al database.php.
Stai facendo il passo più lungo della gamba, devi tornare indietro e studiarti le basi di programmazione, io così non riesco ad aiutarti. Mi arrendo.
 

ANDREA20

Utente Attivo
25 Giu 2016
145
1
18
27
getConnection è una funzione del file database.php, devi solo modificare quella funzzione che ti ho postato non tutto il file user.php, probabilemente hai tolto il richiamo al database.php.
Stai facendo il passo più lungo della gamba, devi tornare indietro e studiarti le basi di programmazione, io così non riesco ad aiutarti. Mi arrendo.

ecco il codice
PHP:
<?php

/*
* In questo file sono contenute le funzioni utili
* alla gestione degli utenti
*/

// Includo la lista delle funzioni per dialogare con il database
require_once 'database.php';

// Questa funzione permette di registrare un nuovo utente nel sistema
function registerNewUser($userData)
{
  // Apro una connessione con il database
  $connection = getConnection();

  // Questi sono i dati da inserire nel database
  $userEmail  = $userData['email'];
  $userPassword  = $userData['password'];
  $userName  = $userData['name'];
  $token  = $userData['token'];

  // Query per inserire i nuovi dati nel database
  $sql = "INSERT INTO user
  (email, password, name, token)
  VALUES
  ('%s', '%s', '%s', '%s') ";

  // Assegno alla query i parametri da cercare
  $sql = sprintf($sql,
  $userEmail,
  $userPassword,
  mysqli_real_escape_string($connection,$userName),
  $token);

  // Provo ad inserire i dati
  if (false == mysqli_query($connection, $sql))
  {
  return false;
  }
  // se sono riuscito ad inserire i dati,
  // ritorno l'ultimo user_id inserito 
  else
  {
  return mysqli_insert_id($connection);
  }
}


// Questa funzione controlla l'esistenza
// nel database di un utente con uno specifico indirizzo email
function userEmailExists($userEmail)
{
    // Apro una connessione con il database
    $connection = getConnection();
  
    // Conto il numero di utenti registrati con
    // l'indirizzo email specificato
    $sql = "SELECT user_id
            FROM user
            WHERE
                email = '%s' ";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sql, $userEmail);
  
    // Eseguo la query sul database
    $result = mysqli_query($connection , $sql);
  
    // Se non ho trovato utenti oppure se si è
    // verificato un errore
    if (false == $result || mysqli_num_rows($result) == 0)
    {
        return false;
    }
    // Altrimenti vuol dire che ho trovato un utente
    // con l'indirizzo email specificato
    else
    {    
        return true;
    }
}

// Questa funzione cerca i dati di un utente
// in base al token specificato
function userFindByToken($token)
{
    // Apro una connessione con il database
    $connection = getConnection();
  
    // Cerco un utente con un certo token
    $sql = "SELECT *
            FROM user
            WHERE
                token = '%s'";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sql, $token);
  
    // Eseguo la query sul database
    $result = mysqli_query($connection, $sql);
  
    // Se si è verificato un errore oppure non
    // ho trovato nessun utente
    if (false == $result || mysqli_num_rows($result) == 0)
    {
        return false;
    }
  
    // Ritorno i dati dell'utente trovato
    return mysqli_fetch_assoc($result);
}

// Questa funzione cerca i dati di un utente
// in base all'indirizzo email specificato
function userFindByEmail($userEmail)
{
    // Apro una connessione con il database
    $connection = getConnection();
  
    // Cerco un utente con un certo indirizzo email
    $sql = "SELECT *
            FROM user
            WHERE
                email = '%s'";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sqli, $userEmail);
  
    // Eseguo la query sul database
    $result = mysqli_query($connection, $sql);
  
    // Se si è verificato un errore oppure non
    // ho trovato nessun utente
    if (false == $result || mysqli_num_rows($result) == 0)
    {
        return false;
    }
  
    // Ritorno i dati dell'utente trovato
    return mysqli_fetch_assoc($result);
}

// Questa funzione cerca i dati di un utente
// in base ad un userId specificato
function userFindById($userId)
{  
    // Apro una connessione con il database
    $connection = getConnection();
  
    // Cerco un utente con un certo userId
    $sql = "SELECT *
            FROM user
            WHERE
                user_id = %d";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sqli, $userId);
  
    // Eseguo la query sul database
    $result = mysqli_query($connection, $sql);
  
    // Se si è verificato un errore oppure non
    // ho trovato nessun utente
    if (false == $result || mysqli_num_rows($result) == 0)
    {
        return false;
    }
  
    // Ritorno i dati dell'utente trovato
    return mysqli_fetch_assoc($result);
}

// Questa funzione serve per attivare l'account
// di un utente con un certo userId
function userActivate($userId)
{
    // Apro una connessione con il database
    $connection = getConnection();
  
    // Attivo l'utente impostando il campo
    // active a 1
    $sql = "UPDATE user
            SET active = 1, token = NULL
            WHERE
                user_id = %d";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sql, $userId);
  
    // Eseguo la query sul database
    $result = mysqli_query($connection, $sql);
  
    // Se si è verificato un errore oppure nessun utente
    // � stato attivato
    if (false == $result || mysqli_affected_rows($connection) == 0)
    {
        return false;
    }
    // Altrimenti l'utente � stato attivato
    else
    {   
        return true;
    }  
}

// Questa funzione permette di settare il token
// di uno specifico utente, identificato dal suo userId
function userSetToken($token, $userId)
{
    // Apro la connessione al database
    $connection = getConnection();
  
    // Questa è la query di aggornamento
    $sql = "UPDATE user
            SET token = '%s'
            WHERE user_id = %d";
  
    // Assegno alla query i parametri da cercare
    $sql = sprintf($sqli, $token, $userId);
  
    // Eseguo la query
    $result = mysqli_query($connection, $sql);
  
    // Se si è verificato un errore oppure nessun token � stato settato
    // ritorno false
    if (false == $result || mysqli_affected_rows($connection) == 0)
    {
        return false;
    }
    // altrimenti ritorno true
    else
    {
        return true;
    }
}
 
Ultima modifica di un moderatore:
Discussioni simili
Autore Titolo Forum Risposte Data
P Problema con file di registrazione in php, non funziona e dà continui errori PHP 0
D Problema script registrazione utente php mysql PHP 14
K [php] Problema con inner join PHP 4
K [PHP] Problema con variabili concatenate. PHP 1
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
D problema php mysql PHP 1
D problema php mysql PHP 1
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
A Problema checkout carrello php PHP 2
G Problema caricamento tabelle MySql da PhP PHP 0
M Problema con php per calcolo costo percentuale PHP 7
O Problema Formmail in PHP su Aruba PHP 0
WebmasterFioriniAndrea Chat e php [problema] PHP 3
L [PHP] Problema con Telegram PHP 1
WebmasterFioriniAndrea [PHP] Problema che non mi fa vedere niente PHP 2
K Help: problema con uno script di booking in php! PHP 0
A [PHP] Problema query insert [RISOLTO] PHP 14
N [Apache] problema con estensione php Apache 0
C [PHP] Problema con download file PHP 0
M [PHP] Problema con preg_match PHP 1
gandalf1959 [PHP] problema con l'utilizzo di Header PHP 3
K [RISOLTO] Problema Griglia Php+Mysql PHP 13
M [PHP] Problema con query select PHP 2
L Problema jQuery validation AJAX (PHP 7) PHP 6
L Problema funzione mail() PHP PHP 3
S [PHP] Problema con istruzione "use" PHP 23
A Problema PHP PHP 1
T [php] problema creazione query select-where PHP 5
M [PHP] problema if PHP 3
L [PHP] Problema su codice o server PHP 5
T [PHP] problema maggiore e minore PHP 4
Cosina [PHP] fwrite problema con le parole accentate PHP 9
M [PHP] Problema search form PHP 3
F [PHP] Problema con number_format PHP 3
L [PHP] problema count messo in una funzione. PHP 1
P [PHP] Progettino CRUD di esercitazione. Problema su $_FILE. PHP 9
trattorino [PHP] problema entrata immagini insert PHP 1
C Apache Cordova problema con php Programmazione 1
trattorino problema raccapricciante php conteggio query PHP 4
T PHP+MYSQL: problema con quelle maledette lettere accentate... PHP 5
F [PHP] Problema con array multidimensionale PHP 4
F Problema con pagine login in PHP PHP 2
M [PHP] Problema script ricezione e invio posta... PHP 1
Kolop [RISOLTO][PHP] Problema Pagination PHP 2
C [PHP] Problema Invio Email Elseif PHP 2
A [PHP] Problema invio mail con funzione mail() PHP 3
gandalf1959 problema con la codifica caratteri accentati e speciali tra php e mysql PHP 3
L [PHP] Problema Script 'Not Found' PHP 4
webmachine [PHP][MYSQL] Problema con le SELECT PHP 5
alessandra86 [PHP] Popolamento database con form ricorsivi - problema array (foreach ) PHP 5

Discussioni simili