Salve,
lo script è un po' pasticciato e contiene degli errori.
Con * * stava forse cercando di comentare le righe del codice?
I commenti in PHP si fanno con // (sigola riga) o /* */ (per blocchi di piu righe). In goni caso, se si commenta l'inizializzazione $db = new PDO(), non potrà mai funzionare.
Ci sono anche degli errori con alcune graffe.
Nel secondo header() c'è un errore di sintassi con l'uso dei doppi apici.
Su AlterVista il databse va configurato in questo modo:
Codice PHP:
$host = 'localhost';
$mydatabase = 'my_NomeAccount';
$user = 'NomeAccount';
$pass = '';
Il campo password generalmente va lasciato vuoto.
NomeAccount corrisponde all'account in uso che in questo caso è
mensasglab.
Così dovrebbe essere a posto (sempre che poi siano presenti e corrette le tabelle nel database):
Codice PHP:
<?php
$host = 'localhost';
$mydatabase = 'my_database';
$user = 'pippo';
$pass = 'pluto';
try {
$db = new PDO('mysql:host='.$host.';dbname='.$mydatabase, $user, $pass);
} catch (PDOException $e){
echo "Errore: " . $e->getMessage();
die();
}
$sql = 'SELECT data, turno, utente, primo, secondo, contorno FROM prenotazioni ORDER BY id ';
$stmt = $db->prepare($sql);
$stmt->execute();
$output = '';
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
$output.='"'.$row['data'].'";';
$output.='"'.$row['turno'].'";';
$output.='"'.$row['utente'].'";';
$output.='"'.$row['primo'].'";';
$output.='"'.$row['secondo'].'";';
$output.='"'.$row['contorno'].'";';
if($output!= ''){$output.="\n";}
}
$file = 'miofile.csv';
$f = fopen($file,'w');
fwrite($f,$output);
fclose($f);
header("Content-type: text/csv");
header("Content-Disposition: attachment; filename='".$file."'");
echo $output;
exit;
?>
Quando si scrivono codici, è sempre bene avere una stesura il più possibile oridinata e regolare. Un codice caotico aumenta l'insorgere di errori e sarà più difficile notarli.
Ovverò, ha preso dei pezzi di codice da più parti nel web e poi li ha uniti?
Quel coduice lo ha prelevato in prevalenza da
qui?
Questo tipo di lavorò è fattbile, sì, ma non è l'approccio giusto per un neofita che sta appena all'abc dell'argomento. L'approccio più corretto, sarebbe quello di imparare prima le basi del linguaggio, ovvero di PHP., anche sperimantando con gli esempi (vedere su:
https://www.php.net).
Quel genere di guide, richiedeono comunque un miniomo di esperienza nel linguaggio in questione. Fare il copia incolla di un codice senza caprici nulla o quasi, è una cattiva abitudine (che purtroppo hanno in molti).
Attenzione poi all'affidabilità di dove si guarda. Ci sono purtroppo alcuni siti che riportano codici con errori o comunque obsoleti.
Comuque nessun problama. Se ha interesse a cimentarsi ed imparare qualcosa in più su PHP., può farlo anche con le risposte che le diamo qui sul forum.
Per qualsiasi dubbio, non si faccia problami, chieda pure.
Cordiali saluti.