[PHP] Problemi con Login e pagina Utente

silvioproducer

Nuovo Utente
30 Dic 2016
3
0
1
51
Salve, sono nuovo di questo forum, spero di non sbagliare sezione. Avrei bisogno di un piccolo aiuto se è possibile. Devo creare un form login multiutenti, in passato ho usato codici php dove devi inserire manualmente le username e password utenti, soltanto che vorrei usare il database adesso. Girando in internet, ho trovato questo codice Php. Il problema è che nell'esempio riportato in rete cosi come si presenta funziona benissimo, come spesso capita, lo fai tu stesso non và. In sostanza,mi da l'errore alla linea 12 come si vede nel codice che riporto. Qualcuno puo' aiutarmi? Grazie di cuore, a presto e Tanti Auguri di fine ed inizio Anno a tutti!

PHP:
<?php
include('koneksi.php');
if(isset($_POST['login'])) {
$username =$_post ['username'];
$password =$_post ['password'];
$bacasql = mysql_query ("SELECT * FROM admin WHERE username= '$username AND password='$password'");
$query=mysql_fetch_array($bacasql);
$username=$query['username'];

if($query>0){
    session_start();
  // (Nelle due linee sottostanti da l'errore, linea 12)
   $_SESSION['username']=['username'];
   $_SESSION['password']=['password'];

     if($query['username']=="admin"){
        header("location:form_admin.php");
    }elseif ($query['username']=="operator") {
        header("location:home.php");
        # code...
    }
 }
 else
 {
    echo"<script language='JavaScript'>alert('login anda ditolak')</script>";
    echo"<script language='javascript'>location.href='index.php'</script>";
 }
 ?>
 
Ultima modifica di un moderatore:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
probabilmente l'hai copiato male, correggi così
PHP:
<?php
include('koneksi.php');
if(isset($_POST['login'])) {
    $username =$_post ['username'];
    $password =$_post ['password'];
    $bacasql = mysql_query ("SELECT * FROM admin WHERE username= '$username AND password='$password'");
    $query=mysql_fetch_array($bacasql);
    $username=$query['username'];
    $password=$query['password'];
    if($query>0){
        session_start();
        $_SESSION['username']=$query['username'];
        $_SESSION['password']=$query['password'];
        /*oppure visto che le estrai prima
        $_SESSION['username']=$username;
        $_SESSION['password']=$password;
        ma se usi direttamente $query[...]
        non ti serve estrarli prima
        */

        if($query['username']=="admin"){
            header("location:form_admin.php");
            exit();
        }elseif ($query['username']=="operator") {
            header("location:home.php");
        # code...QUESTO COS'E??
        }
     }else{
        echo"<script language='JavaScript'>alert('login anda ditolak')</script>";
        echo"<script language='javascript'>location.href='index.php'</script>";
     }
}
?>
o meglio ancora
PHP:
<?php
session_start();//è sempre meglio metterla all'inizio
include('koneksi.php');
if(isset($_POST['login'])) {
    $username =$_post ['username'];
    $password =$_post ['password'];
    $bacasql = mysql_query ("SELECT * FROM admin WHERE username= '$username AND password='$password'");
    $esiste=mysql_num_rows($bacasql);
    if($esiste>0){
        $query=mysql_fetch_array($bacasql);
        $_SESSION['username']=$query['username'];
        $_SESSION['password']=$query['password'];
        if($query['username']=="admin"){
            header("location:form_admin.php");
            exit();
        }elseif ($query['username']=="operator") {
            header("location:home.php");
            exit();
        }
     }else{
        echo"<script language='JavaScript'>alert('login anda ditolak')</script>";
        echo"<script language='javascript'>location.href='index.php'</script>";
     }
}
?>

inoltre un paio di consigli
abbandona le obsolete funzioni mysql_... e passa alle nuove mysqli_...
la password sarebbe meglio codificata come minimo con sha1
e ancora
non accodarti a vecchie discussioni, aprine una nuova (ti ho spostato)
e usa gli appositi bccode per il codice
 

silvioproducer

Nuovo Utente
30 Dic 2016
3
0
1
51
ciao
probabilmente l'hai copiato male, correggi così
PHP:
<?php
include('koneksi.php');
if(isset($_POST['login'])) {
    $username =$_post ['username'];
    $password =$_post ['password'];
    $bacasql = mysql_query ("SELECT * FROM admin WHERE username= '$username AND password='$password'");
    $query=mysql_fetch_array($bacasql);
    $username=$query['username'];
    $password=$query['password'];
    if($query>0){
        session_start();
        $_SESSION['username']=$query['username'];
        $_SESSION['password']=$query['password'];
        /*oppure visto che le estrai prima
        $_SESSION['username']=$username;
        $_SESSION['password']=$password;
        ma se usi direttamente $query[...]
        non ti serve estrarli prima
        */

        if($query['username']=="admin"){
            header("location:form_admin.php");
            exit();
        }elseif ($query['username']=="operator") {
            header("location:home.php");
        # code...QUESTO COS'E??
        }
     }else{
        echo"<script language='JavaScript'>alert('login anda ditolak')</script>";
        echo"<script language='javascript'>location.href='index.php'</script>";
     }
}
?>
o meglio ancora
PHP:
<?php

[QUOTE="borgo italia, post: 185993, member: 9895"]mysqli[/QUOTE]

session_start();//è sempre meglio metterla all'inizio
include('koneksi.php');
if(isset($_POST['login'])) {
    $username =$_post ['username'];
    $password =$_post ['password'];
    $bacasql = mysql_query ("SELECT * FROM admin WHERE username= '$username AND password='$password'");
    $esiste=mysql_num_rows($bacasql);
    if($esiste>0){
        $query=mysql_fetch_array($bacasql);
        $_SESSION['username']=$query['username'];
        $_SESSION['password']=$query['password'];
        if($query['username']=="admin"){
            header("location:form_admin.php");
            exit();
        }elseif ($query['username']=="operator") {
            header("location:home.php");
            exit();
        }
     }else{
        echo"<script language='JavaScript'>alert('login anda ditolak')</script>";
        echo"<script language='javascript'>location.href='index.php'</script>";
     }
}
?>

inoltre un paio di consigli
abbandona le obsolete funzioni mysql_... e passa alle nuove mysqli_...
la password sarebbe meglio codificata come minimo con sha1
e ancora
non accodarti a vecchie discussioni, aprine una nuova (ti ho spostato)
e usa gli appositi bccode per il codice

Ciao Grazie di cuore per la risposta..provo subito. Per quanto riguarda il discorso
mysqli bè ancora dovrei imparare bene, da poco infatti riesco a smanettare sul php e database, cerchero' di aggiornarmi. Intanto grazie di nuovo.
 

drmale

Nuovo Utente
7 Gen 2017
3
0
1
58
Buon giorno, mi aggrego a questa discussione per un problema di login, anche se diverso da quello già postato. Premetto che sono un amatore, principiante e nemmeno giovane. Mi spiego, ho iniziato a studiare php da un mese e sto facendo un programmino lato server, su qnap, che deve semplicemente esporre, aggiornare, aggiungere e modificare una lista d'attesa. Tutto semplice e finora ben riuscito. Ho usato la funzione mysql e non mysqli, in futuro svilupperò la seconda. Ora il mio problema è questo. Ho fatto una pagina di login html, con un form che invia tramite POST le credenziali di accesso a una pagina php che, da un lato verifica le credenziali e quindi autorizza la funzione di modificare la lista d'attesa. In questa pagina php c'è un altro form che tramite una query invia al dbase i dati da aggiungere. Il problema è che nel momento in cui effettuo l'invio dei dati dal form presente nella pagina php, i valori delle variabili che contengono le credenziali inviate in precedenza dalla pagina login.html vengono cancellati, e quindi mi viene negata la possibilità di effettuare l'aggiornamento.
Senza la funzione la pagina di login, tutto funziona benissimo, e il programmino soddisfa completamente le mie esigenze, però ho la necessità che le modifiche possano essere effettuate solo da chi è accreditato.
Penso di aver capito questo, nel momento in cui un qualsiasi tasto submit invia i dati di un form, tutte le variabili che in precedenza sono state valorizzate dall'array $_POST['xyz'], si resettano.
Nei vari tutorial ho visto che le pagine di login, che sono in già in grado di realizzare, al termine della verifica delle credenziali, consentono il reindirizzamento verso la pagina da autorizzare, ma così facendo la pagina può essere richiamata anche senza le credenziali, e se invece implemento la verifica delle credenziali all'interno della pagina da autorizzare, le perdo appena eseguo l'invio degli altri dati.
Spero di essere riuscito a spiegarmi. Ringrazio chiunque abbia la bontà e la pazienza di darmi delle dritte.
Grazie
 

drmale

Nuovo Utente
7 Gen 2017
3
0
1
58
Aggiorno, ho trovato la soluzione al mio problema: impedisco l'accesso diretto alla pagina php e lo consento solo tramite include.
 
Discussioni simili
Autore Titolo Forum Risposte Data
M Problemi con la stampa dei valori in php PHP 1
S Problemi delle funzioni eliminate con PHP e MySQL PHP 4
S Problemi con modulo upload video php (help!) PHP 0
E [PHP] problemi nuova riga con fwrite su piattaforma android PHP 5
M [PHP] Problemi con query unione PHP 11
M [PHP] Problemi con select PHP 6
M [PHP] Problemi con il riconoscimento login. PHP 21
M Problemi con database Apache/2.4.37 (Win32) OpenSSL/1.1.1a PHP/7.3.1 PHP 6
S [PHP] problemi con le sessioni PHP 3
T [PHP] problemi con il browser PHP 0
M [PHP] Problemi con login facebook PHP 0
F [PHP] Problemi di base con bot di telegram PHP 9
G Problemi con pagina online.php di una chat in php PHP 38
S Problemi con impostazioni php PHP 3
P [PHP] problemi con session_start PHP 15
webmachine [PHP] Problemi con Login e pagina Utente PHP 3
L Refresh include php con jquery problemi negli script dopo load jQuery 2
F Problemi login con lo script php PHP 2
C Problemi con esercizi di php PHP 0
B Problemi con pannello di controllo PHP PHP 0
B Problemi con pannello di controllo PHP PHP 0
D PROBLEMI invio posta con php PHP 3
F nl2br di php crea problemi con javascript PHP 7
S problemi con ajax e php Ajax 3
R problemi con un vostro tutorial php. PHP 0
1 problemi con invio PHP PHP 11
M Problemi con apache non interpreta script php Apache 6
tanaka Problemi con Php , css e safari PHP 5
S problemi ad inviare mail in locale con php PHP 13
C Problemi con query Php PHP 1
M Problemi con Forum PHP crezione guidata PHP 1
V PROBLEMI CON IL pHP PHP 1
P Problemi con pagine php PHP 2
M Formail PHP - Problemi con account AOL PHP 1
W click tracking , problemi con la visualizzazione del php aiuto urgente PHP 1
S PHP - ACCESS --> problemi con query PHP 0
K problemi con php PHP 0
M Problemi con la configurazione di Php 4.2.3 come modulo Apache 1.3.27 PHP 0
Z Problemi con l'installazione php 4.3.9 PHP 0
F problemi con php PHP 3
N php problemi a visualizzare video PHP 3
L Problemi form Pagina php HTML e CSS 3
M [PHP] Problemi su inserimento array nel db PHP 7
M [PHP] Problemi di salvataggio su campo calcolato PHP 0
spider81man [PHP] Problemi cancellazione dato su DB [RISOLTO] PHP 1
D problemi login php 5.6 mysql PHP 1
M Problemi tra GROUP BY e tabella 'datagrid.class.php' PHP 6
ANDREA20 problemi carrello in php PHP 0
ANDREA20 [PHP] Problemi carrello commerciale PHP 0
giuseppe_123 Problemi form php/html PHP 33

Discussioni simili