Originariamente inviato da salvo75
Io sono arrivato fino a qui studiando ma non riesco a salvare i dati per questo ho chiesto aiuto. Grazie a chi volesse aiutarmi in questo studio.
Il file data.txt contiene ad esempio:
item1#value1#1#1
item2#value2#2#2
item3#value3#3#3
item4#value4#4#4
Il file table.php invece contiene il seguente codice:
<html>
<head>
<script type="text/javascript">
function controlla(id)
{
num=document.getElementById(id);
num.removeAttribute('readonly');
}
function mostraBox(id)
{
indici=mio=document.getElementById(id);//Indice dell'array
c=document.getElementById("liv1");
c.innerHTML=mio.id;
}
function nascondiBox(id,value)
{
num=document.getElementById(id);
num.innerHTML="$mioArray[$i][$j]="+value;
num.setAttribute('readOnly',true);
d=document.getElementById('liv1');
d.innerHTML="";
}
function cambia(id)
{
v=document.getElementById(id).value;
alert(v);
}
</script>
<?php
// Legge i dati dal file di testo per scoprire il numero massimo di righe e di colonne
function maxx($a)
{
$max[0]=0;
$max[1]=0;
for($i=0;$i<count($a);$i++)
{
if($max[0]<$a[$i][2])
$max[0]=$a[$i][2];
if($max[1]<$a[$i][3])
$max[1]=$a[$i][3];
}
return $max;
}
// Legge i dati dal file di testo
function leggi()
{
$myData=file("data.txt");
$mio=array();
foreach($myData as $value )
{
$value=chop($value);
$mio[]=explode("#",$value);
}
return $mio;
}
function salva($elenco)
{
print_r($elenco);
print_r("Sto Salvando");
$mioFile=fopen("data.txt","w");
foreach($elenco as $row)
{
$riga=implode("#",$row);
fwrite($mioFile,$riga."\n");
}
fclose($mioFile);
}
?>
<title>table1.php</title>
</head>
<body>
<form method="post" action="http://localhost/leggi.php">
<input type="hidden" name="controllo">
<? $mioArray=leggi();
//print_r($mioArray);
$max=maxx($mioArray);
// print_r($max);
?>
<table border="1">
<?
for($i=1;$i<=$max[0];$i++) // max[0] è il massimo numero di righe
{
echo"<tr>";
for($j=1;$j<=$max[1];$j++) // max[1] è il massimo numero di colonne
{
echo "<td>";
$contr=false;
$val_id=$i."_".$j;
for($t=0;$t<count($mioArray);$t++)
{
if(($mioArray[$t][2]==$i) && ($mioArray[$t][3]==$j))
{
$val_id=$mioArray[$t][0];
echo "<input name=\"campo\" id=\"$val_id\" size=\"5\"
onclick=\"controlla(id)\"
onMouseOver=\"mostraBox(id)\"
onMouseOut=\"nascondiBox(id,value)\"
onchange=\"cambia(id)\" readonly type=\"text\" value=".$mioArray[$t][1].">";
$contr=true;
}
}
if(!$contr)
{
echo "<input id=\"$val_id\" size=\"5\"
onclick=\"controlla(id)\"
onMouseOver=\"mostraBox(id)\"
onMouseOut=\"nascondiBox(id,value)\" readonly type=\"text\" value=\"\">";
}
echo "</td>";
}
echo "</tr>";
}
?>
</table>
<div id="liv1" >
</div>
<div id="liv2">
<input type="submit" value="Salva">
</div>
</form>
</body>
</html>