Salve a tutti,
Sto creando un sito per un amico e siccome ho creato 2 select dipendenti fra di loro che interrogano e filtrano un database Mysql, vorrei sapere da Voi esperti, quale migliorie apportare allo script per poterlo rendere più sicuro.
Vi linco il sito che è già online e poi vi posto il codice.
Grazie mille a tutti.
xyz
Prima parte:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Moto di GAZZA MOTO</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="gazza-home.css">
<!--[if IE]>
<link rel="stylesheet" href="gazza-home-explorer.css" type="text/css" />
<![endif]-->
<title>Ordinare dati di una tabella - Esempio JavaScript scaricato da HTML.it</title>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Language" content="it" />
<meta name="Robots" content="All" />
<meta name="Description" content="HTML.it - il sito italiano sul Web publishing" />
<meta name="Keywords" content="Lo script permette di ordinare i dati di una tabella." />
<meta name="Owner" content="HTML.it srl" />
<meta name="Author" content="HTML.it srl" />
<meta name="Copyright" content="HTML.it srl" />
<script type="text/javascript" language="javascript">
function Marca() {
var conta = document.form1.marca.value;
location.href="index.php?marca="+conta+""
}
</script>
</head>
<body>
<div id="mother">
<div id="main">
<div id="css_menu_13">
<ul>[*]Home
<li id="active">Moto[*]Shop[*]Officina[*]Contatti[/list]
</div>
<div id="elenco_moto"align="center">
<?php
include_once 'db_config.php';
$conn = mysql_connect($host, $user, $password) or die($errConnessione);
mysql_select_db($db) or die($errSelezione);
// Controllo se esite gia il numero di pagina, altrimenti lo setto a 1
@$pag = mysql_real_escape_string($_GET["pag"]);
if (isset($pag) == false || is_numeric($pag) == false || $pag < 1) {
$pag = 1;
}
// Genero le variabili che stanno a rappresentare quali record da estrarre dal DB
$fine = 2;
$inizio = ($pag - 1) * $fine;
?>
<form name="form1" method="get" action="index.php">
<div align="center">
<table width="51%" border="2">
<tr>
<td width="52%">Marca</td>
<td width="48%">
<?php
if (empty($_GET['marca'])) {
$query = "SELECT DISTINCT marca FROM prova";
$rs = mysql_query($query) or die(mysql_error());
$num = mysql_num_rows($rs);
echo "<select name=\"marca\" onchange=\"document.form1.submit()\" >";
echo"<option value=\"\">---Seleziona una opzione---</option>";
for ($i = 0; $i < $num; $i++) {
while ($results = mysql_fetch_array($rs)) {
echo "<option value=\"$results[marca]\" >$results[marca]</option>";
}
}
echo"</select>";
} else {
@$marca = mysql_real_escape_string($_GET['marca']);
$query = "SELECT DISTINCT marca FROM prova ";
$rs = mysql_query($query) or die(mysql_error());
$num = mysql_num_rows($rs);
echo "<select name=\"marca\" onchange=\"Marca()\" >";
echo"<option value=\"\">---Seleziona una opzione---</option>";
for ($i = 0; $i < $num; $i++) {
while ($results = mysql_fetch_array($rs)) {
if ($results[marca] == $_GET['marca']) {
echo "<option selected=\"selected\" value=\"$results[$i]\" >$results[$i]</option>";
}
else{
echo "<option value=\"$results[$i]\" >$results[$i]</option>";
}
}
}
echo"</select>";
}
?>
</td>
</tr>
<tr>
<td width="52%">Anno</td>
<td width="48%">
<?php
if (empty($_GET['anno'])) {
@$marca = mysql_real_escape_string($_GET['marca']);
$query = "SELECT * FROM prova WHERE marca='$marca'";
$rs = mysql_query($query) or die(mysql_error());
$num = mysql_num_rows($rs);
echo "<select name=\"anno\" onchange=\"document.form1.submit()\">";
echo"<option value=\"\">---Seleziona una opzione---</option>";
for ($i = 0; $i < $num; $i++) {
while ($results = mysql_fetch_array($rs)) {
echo "<option value=\"$results[anno]\">$results[anno]</option>";
}
}
echo"</select>";
} else {
@$marca = mysql_real_escape_string($_GET[marca]);
$query = "SELECT * FROM prova WHERE marca='$marca'";
$rs = mysql_query($query) or die(mysql_error());
$num = mysql_num_rows($rs);
echo "<select name=\"anno\" onchange=\"document.form1.submit()\" >";
echo"<option value=\"\">---Seleziona una opzione---</option>";
for ($i = 0; $i < $num; $i++) {
while ($results = mysql_fetch_array($rs)) {
if ($results[anno] == $_GET['anno']) {
echo "<option selected=\"selected\" value=\"$results[anno]\" >$results[anno]</option>";
}
else{
echo "<option value=\"$results[anno]\" >$results[anno]</option>";
}
}
}
echo"</select>";
}
?>
</td>
</tr>
<tr>
<td colspan="4"><div align="center">
</div></td>
</tr>
</table>
</p></div>
</form>

