• Home
  • Forum
  • Fare Web
  • PHP

problema misterioso session ID

  • Creatore Discussione Creatore Discussione foki
  • Data di inizio Data di inizio 12 Ott 2009
  • Tag Tag
    autenticazione
  • 1
  • 2
Succ.
1 di 2 Succ. Ultimo

foki

Utente Attivo
2 Lug 2009
48
0
0
  • 12 Ott 2009
  • #1
Ciao a tutti, ecco la pagina da dove effettuo il login:

PHP:
<?php
session_start();

if( isset($_POST['submit_x']) && (trim($_POST['submit_x'])))
{ 
  if((!isset($_POST['username'])) || ($_POST['username'] == ""))
  {
    echo "Attenzione, username non corretto!";
  }
  elseif((!isset($_POST['password'])) || ($_POST['password'] == "") || (!preg_match("/^[a-z0-9]+$/i", $_POST['password'])))
  {
    echo "Attenzione, password non corretta.";
  }else{
    $username = $_POST['username'];
    $password = $_POST['password'];

    @include "config.php";

    $ctrl_login = @mysql_query("SELECT id FROM iscrizioni WHERE username='$username' AND password='$password'") or die (mysql_error());
    if(@mysql_num_rows($ctrl_login)==0)
    {
      echo "Login incorretto.";
    }else{
      $obj = @mysql_fetch_object($ctrl_login) or die (mysql_error());

      $_SESSION['id'] = $obj->id;
      
      @header("Location: iscritti.php");
    }
  } 
}else{
  ?>

l'azione del form...
PHP:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">

Il problema è che non mi fa entrare nella pagina di destinazione "iscritti.php" ma mi reindirizza nella index.php, come vuole il codice qua sotto, inserito nella pagina iscritti.php.
PHP:
<?php
session_start();

// controlliamo se è stata inizializzata la sessione
if(isset($_SESSION['id']))
{
  //controllo id con esito positivo
  echo "Benvenuto! Processo di attivazione concluso positivamente!";
}else{
  //controllo sessione con esito negativo
  @header("Location: index.php");
}
?>

non trovo il problema...anche se sembra essere nella codice del login...chiedo il vostro aiuto, grazie. :byebye:

In particolar modo chiedo aiuto a Eliox visto che mi sono basato su una sua guida.
 
Ultima modifica: 12 Ott 2009

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
  • 12 Ott 2009
  • #2
ritesta il codice togliendo tutte quelle @, diversamente non riesci a vedere gli errori
 

foki

Utente Attivo
2 Lug 2009
48
0
0
  • 13 Ott 2009
  • #3
Eliox il codice funziona, il problema è che non mi fa entrare nella pagina di destinazione "iscritti.php" ma mi reindirizza nella index.php, come vuole il codice inserito nella pagina iscritti.php.

penso che il problema stia nel codice del login...non può essere altrimenti...

comunque il codice l'ho preso da questo ho solo tolto questa riga:
PHP:
$query_attivo = @mysql_query("UPDATE iscrizioni SET attivo='1' WHERE id=".$obj->id) or die (mysql_error());

che serve a settare su attivo l'account dell'untente..e ho trasformato il tuo form per la conferma il un login.
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
  • 13 Ott 2009
  • #4
se avviane il redirect su inde.php vuol dire che $_SESSION['id'] non è settata, prova semplicemente a stamparla nella pagina iscritti.php e vedi se esiste.
 

foki

Utente Attivo
2 Lug 2009
48
0
0
  • 14 Ott 2009
  • #5
in che modo si setta? comunque nella tabella sql l'id c'è.
 

foki

Utente Attivo
2 Lug 2009
48
0
0
  • 14 Ott 2009
  • #6
Eliox scusa la mia ignoranza ma potresti essere un pò + preciso? :byebye:
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 14 Ott 2009
  • #7
Non hai capito. Significa che per qualche motivo l'ID di sessione non viene impostato correttamente. Può dipendere da molte cose.

Comunque ti consiglio di leggerti una guida a PHP e un tutorial su come utilizzare le sessioni.
 

foki

Utente Attivo
2 Lug 2009
48
0
0
  • 14 Ott 2009
  • #8
Alessandro guarda in alto c'è il codice php della pagina in cui effettui il login e il codice php della pagina in cui arrivi dopo aver effettuato il login.

Secondo te che problema c'è con il session id?
che c'è di wrong nel codice?

grazie per l'attenzione!

:byebye:
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
  • 14 Ott 2009
  • #9
foki ha scritto:
Eliox scusa la mia ignoranza ma potresti essere un pò + preciso? :byebye:
Clicca per allargare...
hai tolto le @ come ti ho chiesto prima?
 

foki

Utente Attivo
2 Lug 2009
48
0
0
  • 14 Ott 2009
  • #10
grazie dell'interesse eliox! comunque si si le ho tolte.
 

foki

Utente Attivo
2 Lug 2009
48
0
0
  • 15 Ott 2009
  • #11
Eliox missà che ho scoperto la causa del problema, mi sono riletto il tuo tutorial e proprio nella prima pagina in alto hai scritto:

****************
Il database che utilizzaremo, potremmo chiamarlo "iscritti", avrà una struttura molto semplice e conterrà un'unica tabella a cui verranno associati 4 campi:

1. Id: identificativo univoco, numerico intero e autoincermentale per ogni record;
2. email: campo di testo per le email/userID; <------QUA
3. password: campo di testo per le password;
4. attivo, campo ENUM che prevede due soli valori possibili: 0 (utente non attivo), 1 (utente attivo).
****************


io ho aggiunto anche un'altro campo: username

e ho sostituito nel tuo form login "email" con "username" però nel ritaglio qua sopra c'è scritto "email/userID", mi pare di aver capito che l'email fosse legata all'ID, mentre io sostituendolo nel codice con "username" ho "spezzato" qualcosa, penso sia questo il motivo per cui il codice funziona ma la sessione mi da problemi, che ne pensi? il problema potrebbe essere con la tabella in SQL?

:byebye:
 
Ultima modifica: 15 Ott 2009

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
  • 15 Ott 2009
  • #12
postami il codice del form, non è che per caso hai lasciato email invece che username?
 

foki

Utente Attivo
2 Lug 2009
48
0
0
  • 18 Ott 2009
  • #13
eliox il codice del form è al primo mio post di questa discussione ed anche il codice della pagina di destinazione..dagli un occhio per favore :byebye:
 

foki

Utente Attivo
2 Lug 2009
48
0
0
  • 21 Ott 2009
  • #14
qualcuno mi potrebbe aiutare? tnx
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 21 Ott 2009
  • #15
ciao, prova due cose (al massimo non funzia)
1. in entrambe le pagine al posto di sesson_start();
metti questo

PHP:
if(!isset($_SESSION)){
session_start ();
}

2. nella punto dove controlli pass e user metti

PHP:
$ctrl_login = mysql_query("SELECT id FROM iscrizioni WHERE username='$username' AND password='$password'") or die (mysql_error());
    if(mysql_num_rows($ctrl_login)==0)
    {
      echo "Login incorretto.";
    }else{
      $obj = mysql_fetch_array($ctrl_login) or die (mysql_error());
      $_SESSION['id'] = $obj['id'];
      header("Location: iscritti.php");
    }

tentar non nuoce
 

foki

Utente Attivo
2 Lug 2009
48
0
0
  • 22 Ott 2009
  • #16
Grazie a tutti ma non funziona. :incazz2: mi sto sbattendo ma niente..
ecco (per chi voglia aiutarmi) le "versione", aggiornata con i vostri consigli, del codice:

PHP:
<?php

if( isset($_POST['submit_x']) && (trim($_POST['submit_x'])))
{ 
  if((!isset($_POST['username'])) || ($_POST['username'] == ""))
  {
    echo "Attenzione, username non corretto!";
  }
  elseif((!isset($_POST['password'])) || ($_POST['password'] == "") || (!preg_match("/^[a-z0-9]+$/i", $_POST['password'])))
  {
    echo "Attenzione, password non corretta.";
  }else{
    $username = $_POST['username'];
    $password = $_POST['password'];

    include "config.php";

    $ctrl_login = mysql_query("SELECT id FROM iscrizioni WHERE username='$username' AND password='$password'") or die (mysql_error());
    if(mysql_num_rows($ctrl_login)==0)
    {
      echo "Login incorretto.";
    }else{
      $obj = mysql_fetch_array($ctrl_login) or die (mysql_error());
      $query_attivo = mysql_query("UPDATE iscrizioni SET attivo='1' WHERE id=".$obj['id']) or die (mysql_error());

      $_SESSION['id'] = $obj['id'];
      
      header("Location: iscritti.php");
    }
  } 
}else{
?>

P.S. dopo l'ultimo else c'è il codice del form:

PHP:
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<p align="center" style="margin-top: -20px; margin-bottom: 0">
<img border="0" src="username.gif" width="56" height="11"><br>
<input name="username" type="username" size="20"><br>
<img border="0" src="password.gif" width="57" height="11"><br>
<input name="password" type="password" size="20"></p>
<p align="center" style="margin-top: -8px; margin-bottom: 0"><br>
<input name="submit" type="image" src="buttonlogin.gif"> 
<a href="registrazione.php">
<img border="0" src="buttonregister.gif" width="70" height="26"></a></p>
<p align="center" style="margin-top: -8px; margin-bottom: 0">&nbsp;</p>
<p align="center" style="margin-top: -8px; margin-bottom: 0"><u>
<font size="1" color="#0000FF" face="Arial"><a href="richiesta_password.php">&gt;&gt;</a></font><a href="richiesta_password.php"><font face="Tahoma" size="1" color="#0000FF"> 
hai dimenticato la password?</font></a></u></p>
</form>
<?
}
?>

vedete un pò.. :byebye:
 
O

onebill964

Utente Attivo
21 Giu 2009
46
0
0
venezia
  • 22 Ott 2009
  • #17
problema session id

ciao prova cosi':
PHP:
    $ctrl_login = @mysql_query("SELECT id FROM iscrizioni WHERE 'username'='$username' AND password='$password'") or die (mysql_error());
    if(@mysql_num_rows($ctrl_login)>0)
    {
	// esito login positivo 
      $obj = @mysql_fetch_object($ctrl_login) or die (mysql_error()); 
    
      $_SESSION['id'] = $obj->id; 
      // redirect alla pagina degli iscritti
      @header("Location: iscritti.php");
      
    }else{....form....// esito login negativo
 

foki

Utente Attivo
2 Lug 2009
48
0
0
  • 22 Ott 2009
  • #18
..hai solamente copiato una parte della guida da cui solo partito..quella di eliox..sbaglio?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 22 Ott 2009
  • #19
ciao
mi sembra che tu utilizzi due nomi diversi:

<input name="submit" type="image" src="buttonlogin.gif">

e poi

if( isset($_POST['submit_x']) && (trim($_POST['submit_x'])))

prova a controllare
 
O

onebill964

Utente Attivo
21 Giu 2009
46
0
0
venezia
  • 22 Ott 2009
  • #20
session id

ciao,il tutorial è quello ho modificato qui:
PHP:
if(@mysql_num_rows($ctrl_login)>0)
e invertito l'if.....
 
  • 1
  • 2
Succ.
1 di 2 Succ. Ultimo
Devi accedere o registrarti per poter rispondere.

Discussioni simili

G
problema bordo trasparente file
  • GIULIA CERRY
  • 20 Giu 2025
  • Photoshop
Risposte
1
Visite
155
Photoshop 20 Giu 2025
GIULIA CERRY
G
Problema scheda di rete: "Internet non disponibile"
  • felino
  • 21 Gen 2025
  • Windows e Software
Risposte
1
Visite
401
Windows e Software 28 Gen 2025
alainscilly
A
Problema in Shopify con Pixel Facebook
  • voldemort
  • 27 Mag 2024
  • E-Commerce
Risposte
1
Visite
2K
E-Commerce 27 Mag 2024
m.pittini
M
F
Problema pulsante cerca record su access
  • futty71
  • 20 Apr 2024
  • Database
Risposte
0
Visite
2K
Database 20 Apr 2024
futty71
F
I
Sto progettando nuovi siti utilizzando bootstrap e devo dire funziona bene, l'unico problema e la maschera -moz-
  • Ikon
  • 25 Mar 2024
  • HTML e CSS
Risposte
0
Visite
1K
HTML e CSS 25 Mar 2024
Ikon
I
K
Problema form update
  • Kiko74b
  • 22 Giu 2023
  • PHP
Risposte
2
Visite
1K
PHP 3 Ott 2023
WEBLEADERS
W
O
problema con dvr dahua xvr5116
  • oky74
  • 11 Mar 2023
  • IP Cam e Videosorveglianza
Risposte
0
Visite
2K
IP Cam e Videosorveglianza 11 Mar 2023
oky74
O
S
Problema nel ciclare un json
  • Soulfearor
  • 5 Mar 2023
  • Javascript
Risposte
0
Visite
3K
Javascript 5 Mar 2023
Soulfearor
S
G
Problema con Xampp
  • GreatOtaku
  • 5 Mar 2023
  • Web Server
Risposte
1
Visite
1K
Web Server 6 Mar 2023
GreatOtaku
G
Problema con miniature comandi
  • andrea barletta
  • 27 Feb 2023
  • Photoshop
Risposte
0
Visite
1K
Photoshop 27 Feb 2023
andrea barletta
I
problema con alice
  • ilprincipiante
  • 10 Feb 2023
  • Posta Elettronica
Risposte
0
Visite
1K
Posta Elettronica 10 Feb 2023
ilprincipiante
I
K
Problema Inner join
  • Kiko74b
  • 8 Feb 2023
  • PHP
Risposte
1
Visite
1K
PHP 8 Feb 2023
Kiko74b
K
F
firefox problema http
  • frankz
  • 30 Gen 2023
  • Linux e Software
Risposte
0
Visite
2K
Linux e Software 30 Gen 2023
frankz
F
N
Problema con position absolute e overflow
  • Nocciolina
  • 23 Gen 2023
  • HTML e CSS
Risposte
4
Visite
1K
HTML e CSS 31 Gen 2023
Nocciolina
N
E
Problema jquery Success
  • Emanuele85
  • 15 Gen 2023
  • jQuery
Risposte
2
Visite
2K
jQuery 19 Gen 2023
marino51
L
Problema con inner join
  • lupentino
  • 23 Nov 2022
  • PHP
Risposte
11
Visite
2K
PHP 27 Nov 2022
marino51
K
[php] Problema con inner join
  • Kiko74b
  • 22 Nov 2022
  • PHP
Risposte
4
Visite
2K
PHP 23 Nov 2022
Kiko74b
K
E
problema selezione sfumata
  • Elly 683
  • 20 Ott 2022
  • Photoshop
Risposte
2
Visite
1K
Photoshop 21 Ott 2022
chrdam
C
K
[PHP] Problema con variabili concatenate.
  • Kiko74b
  • 17 Ott 2022
  • PHP
Risposte
1
Visite
1K
PHP 30 Ott 2022
thanatos
T
A
Problema filtro fluidifica Photoshop
  • AlexRicca
  • 30 Lug 2022
  • Photoshop
Risposte
1
Visite
3K
Photoshop 25 Ago 2022
WmbertSea
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?