Estrarre dati da tabella mysql

leon-kennedy

Utente Attivo
19 Mag 2010
147
0
0
Ciao a tutti,ho un piccolo problema:
PHP:
<?php
session_start();

//connessione al database
include('connect.php');

if($_POST) {
 
effettua_login();

}

else

{

mostra_form();
	
}

function effettua_login()

{

// recupero il nome e la password inseriti dall'utente

$user = trim(filter_var($_POST['user'], FILTER_SANITIZE_STRING));
$pass= trim(filter_var($_POST['pass'], FILTER_SANITIZE_STRING));
$pass= sha1($pass); 

// verifico se devo eliminare gli slash inseriti automaticamente da PHP

if(get_magic_quotes_gpc()) {

$user  = stripslashes($user);

$pass  = stripslashes($pass);

}
	
// verifico la presenza dei campi obbligatori
	
if(!$user || !$pass) {

header("location:log_error.php");

exit;
	
}
	
// effettuo l'escape dei caratteri speciali per inserirli all'interno della query
	
$user = mysql_real_escape_string($user);

$pass = mysql_real_escape_string($pass);

// preparo ed invio la query
$query = "SELECT * FROM iscritti WHERE nickname='$user' AND password='$pass'"; 
$result = mysql_query($query);

// controllo l'esito

if (!$result) {
die("Errore nella query $query: " . mysql_error());

}

$record = mysql_fetch_array($result);

if(!$record) {
header("location:log_error.php");
} else {
$_SESSION['username'] = $_POST['user'];
header("location:log_success.php");
}
}
?>
Qui nella sessione['username'] si salva il nome scritto dall'utente in caso in cui il log in avvenga con successo.
Ora io nella pagina successiva ho messo questo codice per continuare la sessione:
PHP:
<?php
session_start();
if(!isset($_SESSION['username']))
{
header('location:../log_error.php');
exit;
}
?>

Io vorrei estrarre i dati dalla tabella SQUADRA_dati che è strutturata così:

id INT(25) auto_increment
team VARCHAR(25)
manager VARCHAR(25)
cash INT(25)

Come posso fare?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
anche se capisco poco cosa c'entra tutto il codice per loggarsi, se chi si logga può vedere i dati della tabella
dovresti fare così

PHP:
<?php 
session_start(); 
if(!isset($_SESSION['username'])) 
{ 
	header('location:../log_error.php'); 
	exit; 
}else{
	//connessione al db
	$query="SELECT * FROM SQUADRA_dati";
	$result=mysql_query($query);
	while($riga=mysql_fetch_array($result)){
		echo "id ".$riga['id']." team ".$riga['team']." manager ".$riga['manager']." cash ".$riga['cash']."<br>";
	}
}
?>
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
ma i dati estratti dalla tabella squadra sono gli stessi per tutti gli utenti?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
alloranella tabella SQUADRA_dati deve esserci un dato che relaziona i suoi record con i record degli utenti (id o pass o...)
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
si utilizzando il WHERE
però come detto non vedo i campi che mettono in relazione le tabelle utente con le squadre e tra l'altro tu passi alla pagina solo la password, cosa lega la password alla tabella delle squadre?
 

leon-kennedy

Utente Attivo
19 Mag 2010
147
0
0
Si,hai ragione,ho messo adesso il campo "team" per effettuare il log in,ma ho un problema 0:)

PHP:
<?php
$team = $_POST['team'];
$query=("SELECT * FROM SQUADRA_dati WHERE team='$team'");
$result = mysql_query($query) or die(mysql_error()); 
while($row = mysql_fetch_array($result)) 
{ 
echo "<table>";
echo "<tr>"; 
echo "<td>". $row['team']. "</td><td>". $row['manager']. "</td><td>". $row['punti']."</td><td>". $row['vittorie']. "</td><td>". $row['pareggi']. "</td><td>". $row['sconfitte']. "</td>";
echo "</tr>"; 
} 
echo "</table>"; 
?>
Lo script non mi da nè errori,ma nemmeno funziona
 
Ultima modifica:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
manca qualcosa
$query=("SELECT * FROM SQUADRA_dati WHERE team='$team'");

PHP:
//....
$query=mysql_query("SELECT * FROM SQUADRA_dati WHERE team='$team'");
//...
 

leon-kennedy

Utente Attivo
19 Mag 2010
147
0
0
Ciao mi restituisce questo errore:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Resource id #6' at line 1
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
metti dei var_dump per vedere i risultati, poi li togli

PHP:
<?php
//sopra immagino che avrai i dati di connessione
$team = $_POST['team'];
var_dump($_POST['team']);
$query="SELECT * FROM SQUADRA_dati WHERE team='$team'";
var_dump($query);
//eccetera.......
?>
il primo dovrebbe darti es
string(9) "nome_team"
il secondo
string(50) "SELECT * FROM SQUADRA_dati WHERE team='nome_team'"

comunque verifica inoltre la corrispondenza esatta tra i nomi nello scrip e nel db comprese maiuscoli/minuscole
questo perchè vista cosi la querry sembrerebbe giusta
 

leon-kennedy

Utente Attivo
19 Mag 2010
147
0
0
Mi restituisce questo:

NULL string(40) "SELECT * FROM SQUADRA_dati WHERE team=''"

Forse devo modificare qualcosa qui quando verifico il log in?
PHP:
<?
if(!$record) {
header("location:log_error.php");
} else {
$_SESSION['username'] = $_POST['team'];
header("location:log_success.php");
}
}
?>
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
NULL -> vuol dire che non trasmetti il post
di conseguenza la select ti viene errata in quanto la variabile $team è nulla
string(40) "SELECT * FROM SQUADRA_dati WHERE team=''"
se non trasmetti il post anche quello che hai fatto non serve
$_SESSION['username'] = $_POST['team'];

devi verificare sulla pagina di log che il campo di input abbia nome="team",
se non i chiama team o cmabi nell'input in team o cambi li nome in $_post
 

leon-kennedy

Utente Attivo
19 Mag 2010
147
0
0
Risolto! :)
Dovevo assegnare a $team il valore $_SESSION['username']

Grazie per l'aiuto che mi hai dato!0:)
 

leon-kennedy

Utente Attivo
19 Mag 2010
147
0
0
Ciao scusa se disturbo ancora,ma vorrei ancora il tuo aiuto:
PHP:
<?
//estraiamo i dati
$team = $_SESSION['username']; 
$query="SELECT * FROM SQUADRA_dati WHERE team='$team'"; 
$result = mysql_query($query) or die(mysql_error()); 
while($row = mysql_fetch_array($result))
{
//postiamo i dati
echo "<ul>";
echo "<li>" .$row['team']."</li>";
echo "<li>" .$row['manager']."</li>";
echo "<li>" .$row['livello']."</li>";
echo "<li>" .$row['campionato']."</li>";
echo "<li>" .$row['cash']."</li>";
echo "<li>" .$row['punti']."</li>";
echo "<li>" .$row['vittorie']."</li>";
echo "<li>" .$row['pareggi']."</li>";
echo "<li>" .$row['sconfitte']."</li>";
echo "<li>" .$row['sponsor']."</li>";
echo "</ul>";
}
?>
Vorrei formattare il campo $row['cash'] con number_format e inoltre vorrei metterci il simbolo degli euro con &euro;
Puoi aiutarmi?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao

PHP:
<?php
// ......
echo "<li>" .number_format($row['cash'], 2, ',', ' ')." €</li>"; 
// ......
?>
ti da un numero 111 222,33 ultima opzione uno spazio ' '
ti da un numero 111222,33 ultima opzione vuota ''
il simbolo dell'euro te lo scrivo con degli spazi, che poi tu toglierai, perche altrimenti vedi il simbolo e non il suo codice
& # 8364 ;
prima di </li> devi scivere il codice in rosso sensa gli spazi
 
Discussioni simili
Autore Titolo Forum Risposte Data
S [PHP] Estrarre dati da tabella e fare la media ad intervalli di tempo PHP 10
S [PHP] Estrarre dati tabella in diversi array PHP 2
Z [VB.NET] Leggere pagina HTML ed estrarre dati da tabella .NET Framework 1
M Php+MySql: Estrarre dati da tabella e consentire all'utente di modificare un valore 'in linea' PHP 6
B Estrarre più dati da una tabella PHP 2
R Estrarre dati da tabella mysql [era:Sto benedetto php] PHP 22
F Estrarre dati da tabella javascript HTML e CSS 0
Monital estrarre dati da una tabella e riscriverli su di un altra PHP 5
B Estrarre dati da database e ordinarli in tabella... PHP 20
P Non riesco ad estrarre dati da doppia tabella PHP 2
C Estrarre dati stringa Sql Database 1
M Estrarre dati da una select HTML PHP 3
D [WordPress] come fare per estrarre dati da un db MySQL tramite una form e visualizzare il risultato WordPress 0
trattorino [PHP] estrarre dati singoli PHP 1
Z Estrarre dati da un DB Mysql PHP 4
S [PHP] Estrarre dati colonna in una stringa PHP 6
S [PHP] estrarre dati sito web protetto con username e password PHP 13
Gigi87 estrarre i dati da un forum o social network Presentati al Forum 1
L [PHP] Estrarre dati da sito web Offerte e Richieste di Lavoro e/o Collaborazione 4
A [PHP] metodo di una classe per estrarre i dati con ciclo while PHP 1
filippino [Javascript] Estrarre dati da database MySQL Javascript 1
P Estrarre dati da un databas mysql PHP 3
filippino Script PHP per estrarre dati estrazioni da sito "10 e lotto" PHP 0
E Estrarre dati da una pagina generata con Javascript Javascript 6
M problema con ciclo foreach per estrarre dati da un database PHP 22
C estrarre dati da sito javascript Javascript 1
P Estrarre dati da DB AIUTO :S [Ho veramente bisogno] PHP 7
S Estrarre dati da diverse tabelle mysql PHP 6
F estrarre dati da una cartella PHP 9
neo996sps Estrarre i dati e presentarli con un layout particolare PHP 0
O [help] estrarre e visualizzare dati da mysql con php a oggetti PHP 6
F Aiuto! Estrarre Dati da Database .mdb e visualizzarli in lightbox PHP 1
I Estrarre dati da un file php PHP 3
P Creare un menu a discesa dove poter fare una selezione ed estrarre i dati da db MySql PHP 3
T [MySql] impossibile estrarre dati da campi TEXT MySQL 0
G estrarre i dati da variabile GET PHP 6
P estrarre dati xml excel con php XML 1
E Estrarre dati dal DB e inviare mail PHP 10
G Help me! Estrarre dati da un db access con flash Flash 0
W Estrarre e ricaricare dati con Ajax Ajax 0
S Estrarre i dati EXIF da una foto PHP 3
tanaka estrarre dati con colori diversi PHP 10
M estrarre dati da database MySql, con ASP Classic ASP 1
F Estrarre dati da database Classic ASP 3
N Estrarre dati che danno una certa somma da Excel, Access o SQL Server Windows e Software 0
grottafelix Estrarre dati da db e modifica Classic ASP 25
grottafelix Estrarre dati da db Classic ASP 13
M Estrarre valore con SELECT COUNT PHP 0
D Estrarre database con link esterno Database 10
S Raggruppare ed estrarre data più recente MySQL 3

Discussioni simili