Originariamente inviata da
KillerWorm
Se gradisci che ti si aiuti qui sul forum, ripeto, sarebbe utile che tu mostrassi ciò che hai fatto, anche se non funzionante.
Nel caso, riporta qui il codice come lo hai modificato e chiarisci meglio cosa non va. A quel punto se ne può discutere.
In questi giorni sono stato molto preso con altri progetti ed ho applicato in modo errato il codice che gentilmente hai postato, avevo anche incluso errori di battitura di cui non mi ero neanche accorto.
Oggi finalmente ho avuto più tempo e tranquillità e riaperto il file mi sono balzati agli occhi gli errori che avevo commesso, inclusa l’errata posizione dove avevo inserito il codice suggerito.
Queste due cose mi facevano vedere sempre un elenco vuoto. Ho provato con diversi browser pensando che fosse colpa del mio preferito Safari.
Poi ho pensato che fosse la causa di php 8, ma solo in seguito mi sono accorto dei miei errori da principiante e della mia fretta nell’eseguire il tutto.
Tra le altre cose ho visto che non avevo postato proprio il codice corretto, lo faccio ora.
Nel definitivo completo ho lasciato due esempi con il vecchio codice per confronto e per far notare la semplicità dei tuoi suggerimenti.
Anche la mia iniziale risposta è frutto della fretta, cattiva compagna, chiedo scusa ancora.
Sono in debito di due birre virtuali.
Faccio ammenda dei miei errori e ringrazio per la tua e la vostra disponibilità.
Buona giornata.
Considero risolto il tutto e chiuso l’argomento.
PS Ho ancora molto da imparare.
Il file deve avere nome index.php.
codice:
<!DOCTYPE HTML>
<html lang="it">
<head>
<meta charset="UTF-8">
<title>Orario</title>
</head>
<?php
// Costruisce e visualizza un elemento <select> con relative <option> secondo i parametri specificati
function creaElementoSelect($id, $arrOption, $selectedValue){
// $id : valore degli attributi "id" e "name" da applicare a <select>
// $arrOption : array valori da attribuire alle <option> come attributo "value" e come contenuto testuale
// $selectedValue : valore per il quale viene applicato l'attributo "selected" alla <option> corrispondente
//
// Ciclo l'array e ottengo il blocco delle <option>
$options = array_reduce($arrOption, function ($accumulator, $currentValue) use ($selectedValue) {
$selected = $currentValue == $selectedValue ? " selected" : "";
return $accumulator."<option value=\"$currentValue\"$selected>$currentValue</option>";
}, "");
// Visualizzo <select> e <option>
echo "<select id=\"$id\" name=\"$id\" class=\"text\">$options</select>";
}
$char_divider = "|";
$filename4 = "data_a.txt";
if (file_exists($filename4)) {
} else {
$fp = fopen('data_a.txt', 'w');
$all_data =
"--".$char_divider."--".$char_divider."--".$char_divider."--";
fwrite($fp, $all_data,);
fclose($fp);
}
if(isset($_POST["reload_data"])){
$myfile = fopen("data_a.txt", "r") or die("Unable to open file!");
$read = fread($myfile, filesize("data_a.txt")); // Lettura del file globale
$divider = explode($char_divider, $read);
fclose($myfile);
$lun_1 = $divider[0];
$lun_2 = $divider[1];
$lun_3 = $divider[2];
$lun_4 = $divider[3];
$_POST["lun_1"];
$_POST["lun_2"];
$_POST["lun_3"];
$_POST["lun_4"];
}
?>
<?php
if(isset($_POST["enter_data"])){
if(isset($_POST['lun_1'])){
$lun_1 = $_POST['lun_1'];
}
if(isset($_POST['lun_2'])){
$lun_2 = $_POST['lun_2'];
}
if(isset($_POST['lun_3'])){
$lun_3 = $_POST['lun_3'];
}
if(isset($_POST['lun_4'])){
$lun_4 = $_POST['lun_4'];
}
$fp = fopen('data_a.txt', 'w');
$all_data =
$lun_1.$char_divider.$lun_2.$char_divider.$lun_3.$char_divider.$lun_4;
fwrite($fp, $all_data,);
fclose($fp);
}
?>
<body>
<form action="index.php" method="post">
<table>
<tr>
<th style="width:12%">Orari inseriti</th>
<th style="width:22%">dalle ore</th>
<th style="width:22%">alle ore</th>
<th style="width:22%">dalle ore</th>
<th style="width:22%">alle ore</th>
</tr>
<tr>
<td>
<p>Lun</p>
</td>
<td>
<label for="lunedi_1"></label>
<?php creaElementoSelect("lun_1", ["09:00", "09:30", "10:00", "10:30", "11:00"], $lun_1); ?>
</td>
<td>
<label for="lunedi_2"></label>
<?php creaElementoSelect("lun_2", ["09:00", "09:30", "10:00", "10:30", "11:00"], $lun_2); ?>
</td>
<td>
<label for="lunedi_3"></label>
<select id="lun_3" name="lun_3" class="text">
<option value="14:00">14:00</option>
<option value="14:30">14:30</option>
<option value="15:00">15:00</option>
<option value="15:30">15:30</option>
<option value="16:00">16:00</option>
<option value="16:30">16:30</option>
</select>
</td>
<td>
<label for="lunedi_4"></label>
<select id="lun_4" name="lun_4" class="text">
<option value="18:00">18:00</option>
<option value="18:30">18:30</option>
<option value="19:00">19:00</option>
<option value="19:30">19:30</option>
<option value="20:00">20:00</option>
<option value="20:30">20:30</option>
</select>
</td>
</tr>
<tr>
<td>
</td>
<td>
<input type="submit" name="enter_data" value="Enter data">
</td>
<td>
</td>
<td>
</td>
<td>
</td>
</tr>
</table>
</form>
<form action="index.php" method="post">
<table>
<tr>
<th style="width:12%">Orari salvati</th>
<th style="width:22%">dalle ore</th>
<th style="width:22%">alle ore</th>
<th style="width:22%">dalle ore</th>
<th style="width:22%">alle ore</th>
</tr>
<tr>
<td>
<p>Lun</p>
</td>
<td>
<?php echo $lun_1?>
</td>
<td>
<?php echo $lun_2?>
</td>
<td>
<?php echo $lun_3?>
</td>
<td>
<?php echo $lun_4?>
</td>
</tr>
<tr>
<td>
</td>
<td>
<input type="submit" name="reload_data" value="Reload data">
</td>
<td>
</td>
<td>
</td>
<td>
</td>
</tr>
</table>
</form>
</body>
</html>