Ciao a tutti
sto cercando di creare un sistema per gestire une lega di gare automobilistiche
ora devo riuscire ad assegnare i punteggi della gara a seconda della posizione in classifica

questa è la struttura della tabella `gare`

CREATE TABLE `gare` (
`race_id` tinyint(3) NOT NULL default '0',
`pos_gara` tinyint(2) NOT NULL default '0',
`nome_pilota` varchar(50) NOT NULL default '',
`auto` varchar(50) NOT NULL default '',
`giri_gara` tinyint(3) NOT NULL default '0',
`tempo_gara` varchar(20) NOT NULL default '',
`gap_gara` varchar(20) NOT NULL default '',
`fastest_laptime` varchar(20) NOT NULL default '',
`fastest_lapnr` tinyint(3) NOT NULL default '0',
`pos_quali` tinyint(2) NOT NULL default '0',
`tempo_quali` varchar(20) NOT NULL default '',
`gap_quali` varchar(20) NOT NULL default ''
) TYPE=MyISAM;

l'aggiornamento di detta tabella lo faccio uploadando i dati da un file CSV che passo al DB con questo codice

Codice PHP:
<?

// QUESTE RIGHE RENDONO LO SCRIPT COMPATIBILE CON LE VERSIONI
// DI PHP PRECEDENTI ALLA 4.1.0
if(!isset($_FILES)) $_FILES $HTTP_POST_FILES;
if(!isset(
$_SERVER)) $_SERVER $HTTP_SERVER_VARS;

/********************* VARIABILI DA SETTARE ********************/
// Directory dove salvare i files Uploadati ( chmod 777, percorso assoluto)
$upload_dir $_SERVER["DOCUMENT_ROOT"] . "/upload";

// Eventuale nuovo nome da dare al file uploadato
$new_name "";

//$allowed_types = array("text/csv");

// Se $new_name è vuota, il nome sarà lo stesso del file uploadato
$file_name = ($new_name) ? $new_name $_FILES["upfile"]["name"];

if(
trim($_FILES["upfile"]["name"]) == "") {

die(
"Non hai indicato il file da uploadare !");

}

//if(@is_uploaded_file($_FILES["upfile"]["tmp_name"])) {

//if(!in_array($_FILES["upfile"]["type"],$allowed_types)) {

//die("Il file non è di un tipo consentito, sono ammessi solo i seguenti: " . implode(",", //$allowed_types) . ".");
//echo "<a href=\"java script:history.go(-1);\">Torna Indietro</a>
";
//exit;
//}
//}

//e poi qui recuperi il file...elimini tutti i dati dalla tabella

$_DATAFILE=file($_FILES['upfile']['tmp_name']); 
include("
config.inc.php" );
$db = mysql_connect("$db_host", "$db_user", "$db_password" ) or die("Problem connecting" ); 
mysql_select_db("
$db_name",$db)or die("Problem selecting database" ); 


while(list(
$key,$_VALUES)=each($_DATAFILE)) { 
$_PARAMS=split(";",$_VALUES); 
//Qui aggiunge i vari parametri 
while (list(
$key,$value)=each($_PARAMS)) { 
$value=str_replace("#","\#",$value); 
$value=str_replace("--","\--",$value); 
$value=str_replace("'","'",$value); 
$value=str_replace(",",".",$value);
$_PARAMS[$key]=$value


$_querysql="INSERT INTO gare (pos_gara, nome_pilota, auto, giri_gara, tempo_gara, gap_gara, fastest_laptime, fastest_lapnr, pos_quali, tempo_quali, gap_quali) VALUES ('{$_PARAMS[0]}','{$_PARAMS[1]}','{$_PARAMS[2]}','{$_PARAMS[3]}','{$_PARAMS[4]}','{$_PARAMS[5]}','{$_PARAMS[6]}','{$_PARAMS[7]}','{$_PARAMS[8]}','{$_PARAMS[9]}','{$_PARAMS[10]}')"

if(!
mysql_query($_querysql,$db)) {
echo 
"Errore, modifica dei record non riuscita
"
;
exit;
} else {
echo 
"<font color='DARKRED' class='risultatitabebig' face='verdana'>Gara Inserita Nel DB</a></font>
"
;
}


echo 
"<hr>"

?>
ora, so che potrei aggiungere una colonna al foglio excel e gestire i punti da li ma vorrei capire se esiste la possibilità di associare in qualche modo alla variabile pos_gara (che indica la posizione in gara), il punteggio da assegnare (es. 20 punti al primo, 15 al secondo e cosi vià)
il problema è soprattutto concettuale...
diciamo che il campo diventerebbe il 12° e si chiamerebbe "punti",
il valore però dovrebbe essere relativo al campo numero 1 (ovvero pos_gara) quindi sarebbe possibile inserire un ciclo IF all'interno della variabile tipo
IF '$_PARAMS[1]' == 1 $punti = 20
ELSE IF '$_PARAMS[1]' == 2 $punti = 15

ovviamente starò sparando str...ate...

avete delle idee alternative, anche appoggiandosi ad una eventuale altra tabella ?

scusate il casino


sono un po' arrugginito col php