Salve ragazzi.
Ecco il quesito. Allora, ho implementato una serie di script in php che mi consentono di inserire, all'interno di un'area amministrazione e poi nella home page del sito, degli eventi (spettacoli ecc). Gli utenti che vogliono effettuare l'acquisto devono essere registrati e quindi loggati.
Se vogliono acquistare un evento devono clikkare, in home, sull'evento di loro interesse e vengono rimandati ad una pagina dove compare quell'evento, quindi con il suo id identificativo, ove trovano un form che gli consente di scegliere numero biglietti e viene calcolato il totale. Clikkando sul bottone acquista i dati relativi all'acquisto vengono inseriti in una tabella chiamata ordini.
Ora, il problema è questo. Non riesco a passare i dati relativi all'utente, ossia il nome, il cognome, la via, ecc.
Il file che controlla il passaggio dati è questo:
Codice PHP:
<?php
$numero = htmlentities(strip_tags($_POST["numero"]));
$totale = htmlentities(strip_tags($_POST["totale"]));
include("config.php");
mysql_connect($db_host,$db_user,$db_password,$db_name) or die ("non riesco a connettermi");
mysql_select_db("$db_name") or die ("Non riesco a selezionare il database");
mysql_query("insert into ordini (numero, totale) values ('$numero', '$totale')") or die( mysql_error() . "
" . $sql) ;
$ultimo_id = mysql_insert_id();
mysql_close();
?>
<table width="400" bgcolor="#f5f5f5" align="center" cellpadding="0" cellspacing="5" border="0">
<tr>
<td>
<div align="center">
<h1><font color="#000000" size="4">Dettaglio acquisti</font></h1>
</div>
</td></tr>
</table>
<table width="400" bgcolor="#FFFFFF" align="center" cellpadding="0" cellspacing="5" border="0">
<tr><td>
<?php
include("config.php");
mysql_connect($db_host, $db_user, $db_password, $db_name) or die ("non riesco a connettermi");
mysql_select_db("$db_name") or die ("Non riesco a selezionare il database");
$dati = mysql_query("SELECT date_format(data,'%d-%m-%Y %H:%i') AS 'dataora' FROM ordini WHERE ordine_id='$ultimo_id'");
$array = mysql_fetch_array($dati);
echo "<h3>Biglietti acquistati</h3> $numero
";
echo "<h3>Costo totale:</h3> $totale
";
echo "Acquistato il ".substr($array ['dataora'],0,10)." alle ". substr($array ['dataora'],11,5);
mysql_close();
?>
<?php
include("config.php");
mysql_connect($db_host, $db_user, $db_password, $db_name) or die ("non riesco a connettermi");
mysql_select_db("$db_name") or die ("Non riesco a selezionare il database");
$dati = mysql_query("SELECT * FROM ordini WHERE ordine_id='$ultimo_id'");
$array = mysql_fetch_array($dati);
echo " <tr>";
echo "<td><a href=\"modifyevent.php?id=" . $array['ordine_id'] . "\">modifica</td> ";
echo "<td><a href=\"menuorg.php\">Torna al menu</td> ";
echo "</tr>";
mysql_close();
?>
La struttura delle due tabelle, utenti e ordini, è questa:
CREATE TABLE `utenti` (
`utente_id` int(3) NOT NULL auto_increment,
`username` varchar(30) NOT NULL default '',
`password` varchar(34) NOT NULL,
`confermapassword` varchar(34) NOT NULL,
`nome` varchar(30) NOT NULL default '',
`cognome` varchar(30) NOT NULL default '',
`giorno` int(2) NOT NULL default '',
`mese` int(2) NOT NULL default '',
`anno` int(4) NOT NULL default '',
`cap` int(10) NOT NULL default '',
`provincia` varchar(30) NOT NULL default '',
`indirizzo` varchar(30) NOT NULL default '',
`civico` int(5) NOT NULL default '',
`mail` char(255) NOT NULL default '',
`data` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
`ip` char(15) NOT NULL default '',
PRIMARY KEY (`utente_id`),
UNIQUE KEY `id` (`utente_id`),
KEY `id_2` (`utente_id`)
)
CREATE TABLE `ordini` (
`ordine_id` int(5) NOT NULL auto_increment,
`numero` int(5),
`totale` decimal (5,2),
`data` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (`ordine_id`)
)
quella degli eventi:
CREATE TABLE `eventi` (
`event_id` int(5) unsigned NOT NULL auto_increment,
`evento` text NOT NULL,
`luogo` text NOT NULL,
`dataevento` varchar(50) NOT NULL default '',
`ora` varchar(50) NOT NULL default '',
`descrizione` text NOT NULL,
`disponibilita` int(3),
`prezzo` decimal (5,2),
`autore` varchar(50) NOT NULL default '',
`data` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
`nome` varchar(50) NOT NULL default '',
`size` varchar(25) NOT NULL default '',
`type` varchar(25) NOT NULL default '',
`immagine` longblob NOT NULL,
`pub` int(1) NOT NULL default '0',
PRIMARY KEY (`event_id`)
)
Come posso risolvere il problema? In modo che all'evento venga associato, al momento dell'acquisto, l'utente che lo sta acquistando? (con tutti i suoi dati, nome, cognome ecc...)
Grazie mille