Tengo un par de problemillas con esta pagina y me estoy volviendo loco en encontrar la solucion....
El primer problema, y el mas importante, es al comienzo hago una verificacion de acceso a dicha pagina mediante if (isset($_SESSION['k_username'])){ y luego verifico si se ha enviado algo mediante if (!$_POST){....}else{...}
Lo del usuario me funciona bien, pero lo del mirar si se ha enviado algo ya, pues no; nunca me aparece la tabla que ha de mostrar al enviar el formulario.
El otro problema que tengo es en las select multiples del formulario; representa que son dos selects multiples que se pasan los valores entre si y luego recojo estos valores mediante un foreach, para hacer la consulta. Bién, pues aqui, al estar vacia la segunda lista al iniciarse, me aparece el error:
Warning: Invalid argument supplied for foreach() in /var/www/vhosts/pluiedenuit.net/httpdocs/pluie/admin/llistats.php on line 86
Me podriais ayudar con estos problemas??
Muchas gracias
Código PHP:
<link rel="stylesheet" type="text/css" href="css/estils.css" />
<script type="text/javascript" src="js/jquery-latest.js"></script>
<script type="text/javascript" src="js/jquery.tablesorter.js"></script>
<?
session_start();
include '../config.php';
conectar();
?>
<style type="text/css">
body {
background-color: #0099FF;
}
select {
width: 200px;
height: 200px;
}
</style>
<script type="text/javascript">
function AddToSecondList()
{
var fl = document.getElementById("firstlist");
var sl = document.getElementById("secondlist");
for (i = 0; i < fl.options.length; i++)
{
if(fl.options[i].selected)
{
sl.add(fl.options[i],null);
}
}
return true;
}
function DeleteSecondListItem()
{
var fl = document.getElementById("firstlist");
var sl = document.getElementById("secondlist");
for (i = 0; i < sl.options.length; i++)
{
if(sl.options[i].selected)
{
fl.add(sl.options[i],null);
}
}
return true;
}
$(document).ready(function() {
// call the tablesorter plugin
$("table").tablesorter();
});
</script>
<?
if (isset($_SESSION['k_username'])){
if (!$_POST){
?>
<table width="100%" height="100%" border="0">
<tr>
<td align="center" valign="top">
<form action="llistats.php" method= "post">
<div>
<?
$sql="SELECT * FROM equivalencia";
$result=mysql_query($sql);
if ($row = mysql_fetch_array($result)){
echo '<select name="firstlist[]" id="firstlist" multiple="multiple">';
do{
echo '<option value= "'.$row["nom_ori"].'">'.$row["nom_tra"].'</option>';}
while ($row = mysql_fetch_array($result));
echo '</select>';
}
?>
<input type="button" value=">> afegir" onclick="AddToSecondList();" />
<input type="button" value="<< eliminar" onclick="DeleteSecondListItem();" />
<select name="secondlist[]" id="secondlist" multiple="multiple"></select>
</div>
<?
foreach($_POST["secondlist"] as $camps){
if($campst == ""){
$campst = $camps;
}else{
$campst = $campst.",".$camps;}
}
?>
<input name="Enviar" type="submit" value="Enviar" />
</form>
</td>
</tr>
</table>
<?
}else{
?>
<table class="tablesorter" cellspacing="1">
<thead>
<tr>
<?
$res2= mysql_query("SELECT ".$campst." FROM usuaris");
for ($i = 0; $i < mysql_num_fields($res2); $i++){
echo ("<th>".mysql_field_name($res2, $i)."</th>");
}
?>
</tr>
</thead>
<tbody>
<?
while ($registre = mysql_fetch_row($res2)){
echo "<tr>";
foreach($registre as $clau){
echo "<td>",$clau,"</td>";
}
}echo "</tr>";
?>
</tbody>
</table>
<?
}
}
//fi login
desconectar();
?>