log in php a gioco

fabry

Nuovo Utente
9 Ago 2010
2
0
0
Buonasera a tutti.
Io e un mio amico stiamo provando a creare una specie di gioco online con il php e mysql.
Ora con un pò di aiuto da un'altra persona abbiamo creato la pagina principale del gioco dove si può accedere solo in caso di log in!
Il problema è che esce un messaggio che dice che la pagina non esiste!
Se c'è qualcuno così gentile ad aiutarci a capire cosa manca ci sarebbe di grande aiuto:0:)

PHP:
<?php
session_start();

//connessione al database

include("connect.php");   

//struttura html

include("game_index.html");

//inclusione delle classi

function __autoload($class_name) {
require_once "classi/".$class_name.".php";   
}

// nascondiamo i messaggi di errore

error_reporting(3);

// Recupero della variabile

$action = $_GET["action"];
$function = $_POST["function"];

// Gestione della autenticazione

if (!$_SESSION["user"] && !$action)
{
	$_SESSION["roleid"] = 0;
	header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF'])."?action=".md5("authReq"), "/\\"));
}

// la classe menu per gestire sia i menu che le action

$menu = new menu();

// File contenente la logica di controllo

$controlPage = $menu->getControl($action, $function, $_SESSION["roleid"]);
include($controlPage);

// File contenente l'output

$formPage = $menu->getForm($action, $function, $_SESSION["roleid"]);
include($formPage);

?>
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
Credo che tu abbia sbagliato l'indirizzo del reindirizzamento, qui:
PHP:
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF'])."?action=".md5("authReq"), "/\\"));
Dovresti sostituirlo con:
PHP:
header("Location: http://".$_SERVER['HTTP_HOST']."/"..rtrim(dirname($_SERVER['PHP_SELF'])."?action=".md5("authReq"), "/\\"));
 

leon-kennedy

Utente Attivo
19 Mag 2010
147
0
0
Ho provato come hai detto tu,ma mi dice che c'è un errore!
Invece il mio problema è che mi dice che la pagina non esiste!
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
L'errore è che ho aggiunto due punti. Correggi così:
PHP:
header("Location: http://".$_SERVER['HTTP_HOST']."/".rtrim(dirname($_SERVER['PHP_SELF'])."?action=".md5("authReq"), "/\\"));[/PHP
Ecco, prova adesso. Dice che la pagina non esiste perché ti sei scordato lo slash.
 

leon-kennedy

Utente Attivo
19 Mag 2010
147
0
0
Ho provato,ma dice ancora che non esiste!Forse l'errore sta nelle classi!

classe database

PHP:
<?php
class database
{
	var $host;
	var $dbName;
	var $user;
	var $password;
	var $conn;
	var $result;


	function __construct($host, $user, $password, $dbName)
	{
		global $errorMsg;

		$this->host = $host;
		$this->user = $user;
		$this->password = $password;
		$this->dbName = $dbName;

		try
		{
			// connessione
			if (!$this->conn = mysql_connect($this->host, $this->user, $this->password))
			throw new Exception("Errore di connessione al database!", 0);
			// selezione db
			if (!mysql_select_db($this->dbName))
			throw new Exception("Errore nella selezione del database!", 1);
		}
		catch (Exception $ex)
		{
			$errorMsg = $ex->getMessage();
		}
	}

	

	function setValue($value)
	{
		// eventuali escape nei valori
		if (!get_magic_quotes_gpc())
		$value = mysql_real_escape_string($value);
		return $value;
	}
	

	function query($sql)
	{
		global $errorMsg;

		try
		{
			if (!$this->result = mysql_query($sql, $this->conn))
			throw new Exception("Errore nella query SQL.");
			return true;
		}
		catch (Exception $ex)
		{
			$errorMsg = $ex->getMessage();
			return false;
		}
	}



	function row()
	{
		return mysql_fetch_array($this->result);
	}


	function row_number($sql){
		try
		{
			if (!$this->result = mysql_query($sql, $this->conn)){
				throw new Exception("Errore nella query SQL.");
			}else{
				$number =  mysql_num_rows($this->result);
				return $number;
			}
		}
			catch (Exception $ex)
			{
				$errorMsg = $ex->getMessage();
				return 0;
			}
				
	}
}
?>

classe menù

PHP:
<?php

class menu
{
	var $id;
	var $manager;
	var $team;
	var $punti;
	var $livello;
	var $campionato;
	var $cash;
	var $vittorie;
	var $pareggi;
	var $sconfitte;
	var $url;
	var $md5;
	
	
	function __construct()
	{
		
	}
		
	////
	
	function getList()
	{
		global $db;
		
		$sql = ("SELECT * FROM squadra_dati WHERE id = '.$id.'");
					
		$db->query($sql);
		
		while ($rowMenu = $db->row())
		{
			$id = $rowMenu[id];
			$hashtable[$id] = array(

"id"		    => $id
,"manager"	    => $rowMenu[manager]
,"team"	            => $rowMenu[team]
,"punti"	    => $rowMenu[punti]
,"livello"          => $rowMenu[livello]
,"campionato"	    => $rowMenu[campionato]
,"cash"	            => $rowMenu[cash]
,"vittorie"	    => $rowMenu[vittorie]
,"pareggi"	    => $rowMenu[pareggi]
,"sconfitte"	    => $rowMenu[sconfitte]
,"url"		    => $rowMenu[url]
,"md5"		    => $rowMenu[md5]);
		}
		return $hashtable;
	}
	
	////
	
	function getDetails()
	{
		global $db;
		
		$sql = "SELECT * FROM squadra_dati WHERE id = ".$db->setValue($this->id);
		$db->query($sql);
		$rowMenu = $db->row();

$this->manager		= $rowMenu[manager];
$this->team             = $rowMenu[team];
$this->punti		= $rowMenu[punti];
$this->livello		= $rowMenu[livello];
$this->campionato	= $rowMenu[campionato];
$this->cash	        = $rowMenu[cash];
$this->vittorie	        = $rowMenu[vittorie];
$this->pareggi		= $rowMenu[pareggi];
$this->sconfitte	= $rowMenu[sconfitte];
$this->url		= $rowMenu[url];
$this->md5		= $rowMenu[md5];
	}
	
	////
	
	function save()
	{
		global $db;
		
	}try{
		
	if ($this->id)
		{

$sql = "UPDATE squadra_dati SET manager = '".$db->setValue($this->manager)."', ".
"team = '".$db->setValue($this->team)."', ".
"punti = '".$db->setValue($this->punti)."', ".
"livello = '".$db->setValue($this->livello)."', ".
"campionato = '".$db->setValue($this->campionato."', ".
"cash = '".$db->setValue($this->cash)."', ".
"vittorie = '".$db->setValue($this->vittorie)."', ".
"pareggi = '".$db->setValue($this->pareggi)."' ".
"sconfitte = '".$db->setValue($this->sconfitte)."' ".
"url = '".$db->setValue($this->url)."' ".
"md5 = '".$db->setValue($this->md5)."' ".
"WHERE id = ".$db->setValue($this->id);
		
		}
		else
		{

$sql = "INSERT INTO squadra_dati (manager, team, punti, livello, "."campionato, cash, vittorie, pareggi, sconfitte, url, md5) ".
"VALUES ('".$db->setValue($this->manager)."', ".
						
"'".$db->setValue($this->team)."', ".
"'".$db->setValue($this->punti)."', ".
"'".$db->setValue($this->cash)."', ".
"'".$db->setValue($this->livello)."', ".
"'".$db->setValue($this->campionato)."', ".
"'".$db->setValue($this->cash)."', ".
"'".$db->setValue($this->vittorie)."', ".
"'".$db->setValue($this->pareggi)."', ".
"'".$db->setValue($this->sconfitte)."', ".
"'".$db->setValue($this->url)."', ".
"'".$db->setValue($this->md5)."')";
		
		}
		if (!$db->query($sql))
			throw new Exception("Errore nel salvataggio del menu", 0);
				
		return true;
	}
	catch (Exception $ex)
	{
		$errormsg = $ex->getMessage();
		return false;
	}
}
	function delete()
{
	global $db;
		
	try
	{
		$sql = "DELETE FROM squadra_dati WHERE id =".$db->setValue($this->id);
		if (!$db->query($sql))
			throw new Exception("Errore nella cancellazione menu", 1);
	}
	catch (Exception $ex)
	{
		$errormsg = $ex->getMessage();
	}
}
	
////
	
function getMenu($id)
{
	global $db;

	$sql = "SELECT * FROM squadra_dati ".
				"INNER JOIN squadra_dati ON id = id ".
				"INNER JOIN squadra_gest ON id = id ".
		
	$resMenu = $db->query($sql);
	$i = 0;
	while ($rowMenu = $db->row())
	{
		$hashtable[$i] = array ( 

"manager"	=> $rowMenu[manager]
,"team"		=> $rowMenu[team]
,"punti"	=> $rowMenu[punti]
,"livello"	=> $rowMenu[livello]
,"campionato"	=> $rowMenu[campionato]
,"cash"		=> $rowMenu[cash]
,"vittorie"	=> $rowMenu[vittorie]
,"pareggi"	=> $rowMenu[pareggi]
,"sconfitte"	=> $rowMenu[sconfitte]
,"url"		=> $rowMenu[url]
,"md5"		=> $rowMenu[md5]
		
	);
		$i++;
	}
	return $hashtable;
}
	
////
function getSottoMenu($ruolo)

{
	global $db;

	$sql = "SELECT * FROM squadre_dati".
				"INNER JOIN id ON squadra_dati = id".
				"INNER JOIN id ON squadra_gest = id".
				"WHERE id = 1 ".
				"AND id = ".$db->setValue($ruolo)." ". " AND id = ".$db->setValue($this->id).
				" ORDER BY squadra_dati";
		
	$resMenu = $db->query($sql);
	$i = 0;
	while ($rowMenu = $db->row())
	{
		$hashtable[$i] = array ( 
"manager"			=> $rowMenu[manager]
,"team"		                => $rowMenu[team]
,"punti"			=> $rowMenu[punti]
,"livello"			=> $rowMenu[livello]
,"campionato"			=> $rowMenu[campionato]
,"cash"		                => $rowMenu[cash]
,"vittorie"			=> $rowMenu[vittorie]
,"pareggi"			=> $rowMenu[pareggi]
,"sconfitte"			=> $rowMenu[sconfitte]
,"url"				=> $rowMenu[url]
,"md5"				=> $rowMenu[md5]	
		);
		$i++;
	}
	return $hashtable;
}
	
	
function getControl($action, $func, $ruolo)
{
	global $db;
				
	$sql = "SELECT * FROM squadra_actions ".
				"INNER JOIN squadra_dati_action_role ON squadra_dati_idAction = id ".
				"WHERE squadra_dati_idRole = ".$db->setValue($ruolo);
	$resMenu = $db->query($sql);
	while ($rowMenu = $db->row())
	{
		if ($rowMenu[md5] != "")
			$md5 = md5($rowMenu[md5]);
		else
			$md5 = "";
						
		if ($action == $md5 &&
			($func == "" || $func == $rowMenu[func]) &&
			$rowMenu[controlpage])
		{
			if (file_exists($rowMenu[controlpage]))
				return $rowMenu[controlpage];
		}
	}

	return "/pagenotfound.html";
}
	
////
	
function getForm($action, $func, $ruolo)
{
	global $db;
		
	$sql = "SELECT * FROM squadra_actions ".
				"INNER JOIN squadra_actions_role ON idAction = id ".
				"WHERE squadra_dati_idRole = ".$db->setValue($ruolo);
	$resMenu = $db->query($sql);
	while ($rowMenu = $db->row())
	{
		if ($rowMenu[md5] != "")
			$md5 = md5($rowMenu[md5]);
		else
			$md5 = "";
			
		if ($action == $md5 &&
			($func == "" || $func == $rowMenu[func]) &&
			$rowMenu[formpage])
		{
			if (file_exists($rowMenu[formpage]))
				return $rowMenu[formpage];
		}
	}
		
	return "/pagenotfound.html";
}

////
	

	
////
}
?>
 

leon-kennedy

Utente Attivo
19 Mag 2010
147
0
0
L'errore è qui?

header("Location:http://".$_SERVER['HTTP_HOST']."/".rtrim(dirname($_SERVER['PHP_SELF'])."/".game_index.php"?action=".md5("authReq"), "/\\"));
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao,

1. per vedere dove è l'errore commenta la riga dell'header e scrivi (o subito sotto o sopra)

PHP:
echo $_SERVER['HTTP_HOST']."/".rtrim(dirname($_SERVER['PHP_SELF'])."/game_index.php?action=".md5('authReq');

cosi vedi se l'indirizzo è giusto o meno

2. poi dici che ti da un errore, quale?
 

leon-kennedy

Utente Attivo
19 Mag 2010
147
0
0
Mi dice:

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /membri/beamanager/gioco/game_index.php on line 34

cioè questa:

header("Location:http://".$_SERVER['HTTP_HOST']."/".rtrim(dirname($_SERVER['PHP_SELF'])."/".game_index.php"?action=".md5("authReq"), "/\\"));
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
prova così

PHP:
header("Location:http://".$_SERVER['HTTP_HOST']."/".rtrim(dirname($_SERVER['PHP_SELF'])."/game_index.php?action=".md5('authReq'),"/\\"));
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
scusa col copia incolla mi sono dimenticato
togli
....$_SERVER['HTTP_HOST']."/".rtrim(dirname....

e metti così

...$_SERVER['HTTP_HOST'].rtrim(dirname....
 
Discussioni simili
Autore Titolo Forum Risposte Data
A [PHP] Generazione Log modifiche Database PHP 5
bubino8 [PHP] Controllo Log e Modifiche Utenti PHP 5
S [PHP] Algoritmo log in e out PHP 2
R [PHP] Software gestione interventi e creazione registro (log) PHP 1
T controllare gli errori nel log di php PHP 1
S php error log PHP 1
C php: al download di un file scrivere il log su file esterno. PHP 1
M [PHP-MYSQL]{Auto log out} PHP 3
trattorino [Javascript] come capire procedimento log user Javascript 2
felino [WordPress] File di log degli errori WordPress 6
H Interpretare e leggere il file log di sfc/scannow. Windows e Software 0
L [WordPress] Problema Javascript nel log del browser WordPress 1
localhost.nicola File log erroe con phpmailer PHP 3
novello88 Joomla su VPS OVH: non funziona nulla ma nessun errore nel log Server Dedicati e VPS 1
P File di log personalizzato PHP 4
L LOG4J in a tomcat webapplication on a server doesn't create log file Web Server 0
Licantropo Log delle operazioni sul server Apache 0
L Form di registrazione e log in. PHP 2
I log di un router Reti LAN e Wireless 6
T [Microsoft SQL Server 2008 (SP3)] log delle transazioni è pieno Database 1
Trapano like e log PHP 5
F log pagina administrator bianca Joomla 0
S Aiuto cookie e log-in PHP 0
D log in all’apertura del browser PHP 2
S Log login area privata PHP 6
Monital Creazione file log personalizzato PHP 14
S piccola info su log utenti PHP 0
C Effettuare il log out alla chiusura del browser PHP 3
R Analisi dei log PHP 1
X consultare un log PHP 0
A Log PHP 4
marlenka Log in Classic ASP 6
T Errore in Log In PHP 0
I Analizzare file log. ASP.NET 1
D Home Pge log-in forum HTML e CSS 0
P HIJACK log, datemi un okkiatina Sicurezza e Virus 2
peppoweb Un bug blocca a distanza il log di Apache HTTP Server Sicurezza e Virus 0
F Cerco Hosting con VECCHIE versioni di php Hosting 0
Cosina Captcha php PHP 1
S passare un valore da un form a un file .php con metodo post PHP 4
N php msyql PHP 6
N php problemi a visualizzare video PHP 3
A menu a tendina php PHP 1
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
F Php date_diff PHP 1
K [PHP] Aggiungere caratteri ad una stringa in base alla lunghezza della stessa PHP 2
C Wp-admin a file php WordPress 5
Lino80 [Retribuito] Cerco programmatore php per modifica/inserimento funzione/valori da un plugin importer wordpress Offerte e Richieste di Lavoro e/o Collaborazione 0
csi Inviare file jpg in locale alla stampante con php PHP 0
M Passaggio variabili array php su un tasto jq PHP 3

Discussioni simili