aiuto su codice php

francio21

Nuovo Utente
22 Nov 2011
3
0
0
Salve a tutti..... sono nuovo del forum e non so se questa domanda è stata gia fatta....
Il mio problema è il seguente: la tabella del db è composta dei campi: id,user,password,dieta;
ho una pagina in php per il login (che funziona) e vorrei reindirizzare la pagina di avvenuta connessione in base al valore contenuto nella colonna dieta relativa all'user logato. Spero di essere stato chiaro...... vi posto il codice:

PHP:
<?
//Includo la connessione al database
$link = mysql_connect("localhost","root","root") or die ("Attenzione non trovo il database");
mysql_select_db("utenti") or die ("Attenzione non trovo il database");

//Queste sono le variabili che vengono inviate dal filmato flash
$user=$_POST['user'];
$pass=$_POST['pass'];

//connessione al database
if ($user && $pass){
//Creao la query
$query = "SELECT dieta FROM user WHERE username = '$user' AND userpassword = '$pass'";
$result = mysql_query( $query ) or die ("query errata");

$dieta = mysql_fetch_array($result);
//Controllo lo stato del login
$num = mysql_num_rows( $result );
if ($num == 1 AND $dieta == '2'){
	print "status=Grazie per aver effettuato il Login.&checklog=1";
	} elseif ($num == 1 AND $dieta == '3') {
		print "status=Grazie per aver effettuato il Login.&checklog=2";
		} else {
	print "status=Spiacenti i suoi dati non hanno avuto riscontro con il nostro database&checklog=3";
}
}
 
Ultima modifica di un moderatore:

andrex1191

Utente Attivo
5 Apr 2011
78
0
0
Salve a tutti..... sono nuovo del forum e non so se questa domanda è stata gia fatta....
Il mio problema è il seguente: la tabella del db è composta dei campi: id,user,password,dieta;
ho una pagina in php per il login (che funziona) e vorrei reindirizzare la pagina di avvenuta connessione in base al valore contenuto nella colonna dieta relativa all'user logato. Spero di essere stato chiaro...... vi posto il codice:

Ciao, fossi in te farei un'unica query, al momento del login se l'utente è verificato estrapoli il campo "dieta" corrispondente e lo utilizzi per il tuo reindirizzamento (non ho capito bene in che modo perchè non l'hai spiegato)

PHP:
//Connessione database

$login = mysql_query("SELECT * FROM user WHERE user = '{$user}' and pass = '{$pass}'", $connessione) or die("errore");

if(mysql_num_rows($login) == 1)
{
$array = mysql_fetch_assoc($login);
$dieta = $array['dieta'];
echo"login effettuato con successo";

//e poi fai il reindirizzamento in base al valore di $dieta 

}
else
echo"user o pass non  trovati";

Spero di esserti stato d'aiuto
 

francio21

Nuovo Utente
22 Nov 2011
3
0
0
aiuto

ora spiego meglio: ho creato un'applicazione il flash che tramite php comunica con un database.
quindi in base al login e pass mi rimanda al fotogramma corrispondente al numero indicato nella colonna dieta(utilizzando il &checklog=...). Ho modificato il file in questo modo, ma non funziona, si blocca sulla schermata di accesso al database....

PHP:
<?
//Includo la connessione al database
$link = mysql_connect("localhost","root","root") or die ("Attenzione non trovo il database");
mysql_select_db("utenti") or die ("Attenzione non trovo il database");

//Queste sono le variabili che vengono inviate dal filmato flash
$user=$_POST['user'];
$pass=$_POST['pass'];

//connessione al database
if ($user && $pass){
//Creao la query
$login = mysql_query("SELECT * FROM user WHERE user = '{$user}' and pass = '{$pass}'", $connessione) or die("errore");

if(mysql_num_rows($login) == 1)
{
$array = mysql_fetch_assoc($login);
$dieta = $array['dieta'];
if ($dieta == 2){
	print "status=Grazie per aver effettuato il Login.&checklog=1";
	} elseif ($dieta == 3) {
		print "status=Grazie per aver effettuato il Login.&checklog=2";
		} 
	}
}else {
	print "status=Spiacenti i suoi dati non hanno avuto riscontro con il nostro database&checklog=3";
}
?>

puoi dirmi dove sto sbagliando?
grazie
 
Ultima modifica di un moderatore:

andrex1191

Utente Attivo
5 Apr 2011
78
0
0
Cosa vuol dire si blocca sulla schermata di accesso al database?? qual è l'errore?

E poi non sono molto sicuro di print "status=Grazie per aver effettuato il Login.&checklog=1"; sei sicuro che questa parte sia giusta? in questo modo tutto il contenuto tra gli apici non diventa una stringa? Non capisco cosa sia checklog..

Comunque scrivi l'errore..

PS.
Per connetterti al db fai cosi':
PHP:
//connessione al server 
$conn = mysql_connect("localhost", "root", ""); //di default e in locale i dati sono questi ma se li hai cambiati devi settarli in modo giusto
if (!$conn)
  die("errore di connessione  " . mysql_error ());
//selezione del database
$sel = mysql_select_db("Nome_database", $conn);
if (!$sel)
  die("errore di connessione al database  " . mysql_error());
E al momento della query dopo la parte in mysql scrivi $conn non $connessione
prova cosi' e vedi che errore ti da
 
Ultima modifica:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
suggerisco, come al solito, di dividere la query e di mettere var_dump
PHP:
<?php
//...
$query_str="SELECT * FROM user WHERE user = '$user' and pass = '$pass'";
var_dump($query_str);
$login = mysql_query($query_str) or die("errore");
var_dump($login);
//...
?>
il primo var_dump ti restituisce la composizione della stringa e così puoi vedere se viene scritta come dovrebbe (vorresti)
il secondo FALSE o RESOURCE se la query va a buon fine
da quei due var_dump puoi risalire all'errore.
volendo per capire meglio puoi metteri anche quando leggi i $_POST
PHP:
<?php
//...
$user=$_POST['user'];
var_dump($_POST['user']);
$pass=$_POST['pass'];
var_dump($_POST['pass']);
//...
?>

p.s.
NON usare gli shorttag <? sono deprecati, usa <?php
poi quando posti il codice racchiodilo tra gli appositi tag (li trovi nella parte di formattazione)

dimenticavo:posta il risultato dei var_dump
 
Ultima modifica:

francio21

Nuovo Utente
22 Nov 2011
3
0
0
help

nella schermata dall'applicazione una volta che clicco sul tasto invia mi esce la scritta "accesso al database....."
questo codice senza la funzione di controllo sul campo dieta, funziona alla perfezione.....il ploblema è che ho bisogno di visualizzare fotogrammi diversi (checklog=) a seconda del contenuto dalla colonna dieta.
Faccio un esempio:

User:pippo
Password:pluto
dieta:3

in base alla tabella vedo che il dato in dieta e 3, quindi se inserisco pippo e pluto come username e password mi restituisce la pagina relativa alla dieta 3 (checklog=2).

checklog è una variabile che si trova nel codice action Script che varia a seconda del risultato

ho fatto la modifica proposta da borgo italia e mi da questo errore e provo a eseguirlo il IE

Codice:
Notice: Undefined index: user in C:\xampp\htdocs\progetto\controlla_login3.php on line 5

Notice: Undefined index: user in C:\xampp\htdocs\progetto\controlla_login3.php on line 6
NULL 
Notice: Undefined index: pass in C:\xampp\htdocs\progetto\controlla_login3.php on line 7

Notice: Undefined index: pass in C:\xampp\htdocs\progetto\controlla_login3.php on line 8
NULL

che corrispondono a questi:

PHP:
//Queste sono le variabili che vengono inviate dal filmato flash
$user=$_POST['user'];
var_dump($_POST['user']);
$pass=$_POST['pass'];
var_dump($_POST['pass']);
 
Ultima modifica di un moderatore:

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
PHP:
if(isset($_POST['user']))
{
$user=$_POST['user'];
}

e così per tutti
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
eliox ha ragioene, però se ha provato a trasmettere dal form in flash e quello è il risultato vuol dire o che non tramett ben o che non riceve.
sono da verificare i nomi dei campi di input con quelli che hai nei $_post (che non so come sono fatti in flash)
 
Discussioni simili
Autore Titolo Forum Risposte Data
G Aiuto! Studente cerca aiuto per un codice PHP PHP 1
O Aiuto Codice eval decodificato in file php PHP 2
S Aiuto codice php/ajax Ajax 0
L Aiuto codice PHP: Non aggiorna la tabella!! PHP 13
G Codice bottone JS+PHP [era:Aiuto!!!!] HTML e CSS 2
S Aiuto! Bottone inserito da codice non funziona PHP 7
A aiuto per un codice... PHP 1
M Cerco aiuto per una modifica di un codice Javascript 2
T aiuto codice actionscript3 Flash 1
D Chiedo aiuto con questo codice PHP 0
I Spostare codice js inline in una funzione js con l'aiuto del dom Javascript 1
F Aiuto! Codice Javascript non funzionante correttamente Javascript 0
R Aiuto per snellire un codice... PHP 0
C Aiuto per conversione codice! PHP 1
S codice C su JavaScript......vi prego aiuto, rischio licenziamento Javascript 0
L Aiuto Codice Javascript Javascript 0
I Aiuto codice Classic ASP 3
D Aiuto, non so caricare il codice htlm HTML e CSS 4
E Aiuto per query PHP 8
R Aiuto ripristino sito web Presentati al Forum 0
L Aiuto con DataGridView Visual Basic 1
F Aiuto! cambio immagine di sfondo al cambio pagina HTML e CSS 2
I aiuto urgente per thunderbird Posta Elettronica 0
I aiuto per outlook Posta Elettronica 0
D aiuto funzioni javascript Javascript 1
T aiuto per trasformare un quiz fatto in JS in un quiz in JQUERY jQuery 0
D Aiuto CSS in ELEMENTOR - Cambiare un testo CMS (Content Management System) 0
M Fullcalendar in Codeigniter, un aiuto per la chiamata $ajax ? jQuery 0
K Aiuto con file audio in html HTML e CSS 1
G Script notifiche dekstop aiuto Javascript 0
P Aiuto per rendere un Bot Telegram Privato PHP 1
M Un aiuto da chi ha apple Mac e Software 0
P Richiesta di aiuto Presentati al Forum 1
A Aiuto per pagina php PHP 0
M Questa pagina non carica correttamente Google Maps: aiuto!! HTML e CSS 1
I Aiuto php Dependent Lookup PHP 0
R Aiuto con le query MS Access 2
M AIUTO ESERCIZIO JAVA Javascript 1
G Aiuto con htaccess e rewriterule PHP 0
T cercasi aiuto per file d1 (open-edge db) Database 0
M Aiuto con inserimento immagini WordPress 6
D aiuto schermata photoshop Photoshop 0
L Aiuto per programma web php/mySQL PHP 2
A Aiuto php colore diverso PHP 10
L Aiuto creazione menu mancante WordPress 0
C Aiuto compiuto scuola PHP/MySQL PHP 2
G Insert into select - Aiuto MySQL 0
I Aiuto bash linux Programmazione 1
F Aiuto java script Javascript 2
R Cerco aiuto Offerte e Richieste di Lavoro e/o Collaborazione 7

Discussioni simili