Non riesco a risolvere questo problema premettendo che essendo autodidatta non conosco bene il php.
Allora ho creato un sito dove gli utenti che effettuano il login possono scegliere degli alimenti dai vari box select e al click del pulsante calcola vengono restituiti dei valori in funzione delle scelte e dei parametri personali dell'utente in questione, parametri inseriti del db mysql.
Fin qui tutto ok.
Il problema risiede nell'amministratore, al quale ho creato una pagina dove l'utente amministratore (admin) del sito visualizza la lista degli utenti (facendo una query al db) e cliccando su un nome di utente deve poter effettuare la simulazione del calcolo, ossia deve poter effettuare i calcoli con i parametri di quell'utente scelto.
In realtà non ci riesco ogni volta che clicco sul pulsante calcola mi effettua il calcolo con i parametri dell'admin.
Ecco gli script:
calcolo.php
Quando l'utente admin clicca sull'utente per cui vuole effettuare il test viene caricata la pagina calcola.php?mod=$idCodice PHP:<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="get">
<select name="stomaco" OnBlur="if (this.options[this.selectedIndex].value==-1) alert('ERRORE, selezionate il valore')">
<option value="-1" selected> esercizio a stomaco...</option>
<option value="vuoto">vuoto</option>
<option value="pieno">pieno</option>
</select>
<select name="pasto" OnBlur="if (this.options[this.selectedIndex].value==-1) alert('ERRORE, selezionate il valore')">
<option value="-1" selected> che tipo di pasto.</option>
<option value="colazione">colazione</option>
<option value="pranzo">pranzo</option>
<option value="cena">cena</option>
</select>
...
...
<input type="submit" value="Send">
</form>
<?
include_once ("conf-mod.php");
if(isset($_GET['mod']))
{
if ($_SESSION['SESS_LOGIN'] == 'admin')
{
$id=($_GET['mod']);
//$result = mysql_query("SELECT * FROM members WHERE member_id='$id'")
$q="SELECT * FROM members WHERE member_id='$id'";
$ris=mysql_query($q);
$riga=mysql_fetch_array($ris);
$nome=$riga['firstname'];
$cognome=$riga['lastname'];
$username=$riga['login'];
$peso=$riga['peso'];
$eta=$riga['eta'];
$a=$riga['A'];
$b=$riga['B'];
$c=$riga['C'];
$d=$riga['D'];
$e=$riga['E'];
$f=$riga['F'];
}
else
{
$nome=$_SESSION['SESS_FIRST_NAME'];
$a=$_SESSION['SESS_a'];
$b=$_SESSION['SESS_b'];
$c=$_SESSION['SESS_c'];
$d=$_SESSION['SESS_d'];
$e=$_SESSION['SESS_e'];
$f=$_SESSION['SESS_f'];
}
}
echo "<div>Alcool test di ".($nome)."</div>\n";
//A seguire poi ci sono i vari calcoli
$risultato=$a+$b*...
...
...
ossia:
Questo è l'unico modo che sono riuscito a trovare per estrapolare dal database dell'utente scelto. Infatti la pagina si carica con tutti i parametri dell'utente, ma quando effettuo il calcolo il mod=$id sparisce per cui il calcolo viene fatto in all'utente in sessione ossia admin.Codice PHP:echo "<td><a href=\"calcola.php?mod=$id\">[test]</a>";
Sapete come evitare questo? O devo strutturare il concetto in un altro modo?
Scusate la lunghezza della descrizione.

Rispondi quotando
