Discussion:
2 problemes
(trop ancien pour répondre)
Christian
2007-06-28 13:39:04 UTC
Permalink
Bonjour,

1er problème :
J'ai un script qui créé un fichier, recevant le contenu d'une BD, puis je
l'envoi par les commandes header. Cela a marché, mais marche mal maintenant.
En effet j'ai maintenant en plus de mon contenenu BD le script et les
balises HTML. Pourquoi ?
Voici le script en question:
Connexion();
$Result = mysql_query($requete);
//Créé le fichier d'exportation ou ajoute les données dans le fichier
existant
$file = fopen("Export/ExportIncorpo.txt","w+");
//Inscrit les données de la table inscription
fwrite($file,"ID ; Dt Inscription ; Nom ; Prenom ; Date Naissance ;
Adresse ; CP ; Ville ; Mail ; Tel-1 ; Tel-2 ; MDP\r\n");
while ($champ = mysql_fetch_array($Result))
{
$ligne = $champ[0];
// complète la ligne d'enregistrement
for ($i=1;$i != $Limite;$i++)
{
$ligne .= ";" .$champ[$i];
}
$ligne .="\n";
fwrite($file,$ligne);
$Total = $a++;
}
fclose($file);
header('Content-type: text/plain');
readfile("Export/ExportIncorpo.txt");
header('Content-Disposition: attachment; filename="ExportIncorpo.csv"');

2ème problème:
J'ai des liens du style <a href="admin2.php?aff=expExp">Export</a>
J'aurais souhaité que la page se rafraîchisse à chaque clique sur les liens.
En effet à l'heure actuelle, lorsqu'un contenu est affiché celui-ci reste en
place.

Christian.
Olivier Miakinen
2007-06-28 17:33:59 UTC
Permalink
Post by Christian
J'ai un script qui créé un fichier, recevant le contenu d'une BD, puis je
l'envoi par les commandes header. Cela a marché, mais marche mal maintenant.
En effet j'ai maintenant en plus de mon contenenu BD le script et les
balises HTML. Pourquoi ?
Je n'ai pas compris le problème que tu décris, mais voici déjà quelques
problèmes potentiels que je voix en lisant rapidement ton code.
Post by Christian
Connexion();
$Result = mysql_query($requete);
Tu ne sembles pas traiter le cas où la requête aurait échoué.
Post by Christian
//Créé le fichier d'exportation ou ajoute les données dans le fichier
existant
$file = fopen("Export/ExportIncorpo.txt","w+");
Idem.
Post by Christian
//Inscrit les données de la table inscription
fwrite($file,"ID ; Dt Inscription ; Nom ; Prenom ; Date Naissance ;
Adresse ; CP ; Ville ; Mail ; Tel-1 ; Tel-2 ; MDP\r\n");
while ($champ = mysql_fetch_array($Result))
{
$ligne = $champ[0];
// complète la ligne d'enregistrement
for ($i=1;$i != $Limite;$i++)
Je ne vois pas où $Limite est déclarée, mais je suppose que c'est bon.
Post by Christian
{
$ligne .= ";" .$champ[$i];
}
$ligne .="\n";
fwrite($file,$ligne);
$Total = $a++;
}
fclose($file);
header('Content-type: text/plain');
readfile("Export/ExportIncorpo.txt");
header('Content-Disposition: attachment; filename="ExportIncorpo.csv"');
Attention, ce dernier header() ne peut pas fonctionner à partir du
moment où le fichier Export/ExportIncorpo.txt n'est pas vide. Il te
faudrait le mettre avant, et en l'état je suis surpris que tu ne nous
signales pas une erreur « headers already sent ».
Post by Christian
J'ai des liens du style <a href="admin2.php?aff=expExp">Export</a>
J'aurais souhaité que la page se rafraîchisse à chaque clique sur les liens.
En effet à l'heure actuelle, lorsqu'un contenu est affiché celui-ci reste en
place.
En principe, si tu cliques sur le lien, cela lance une nouvelle requête
HTTP et la page devrait donc se rafraîchir avec le résultat du script
admin2.php. Je ne comprends pas comment il pourrait en être autrement.
Tu as une URL pour qu'on puisse constater le phénomène ?
Sebastiaan 'CrashandDie' Lauwers
2007-07-03 16:02:16 UTC
Permalink
Post by Olivier Miakinen
Je n'ai pas compris le problème que tu décris, mais voici déjà quelques
problèmes potentiels que je voix en lisant rapidement ton code.
La question que je me pose surtout est, pourquoi s'amuser à écrire dans
un fichier, puis s'amuser à faire lire ce fichier juste pour le fun, au
lieu de tout simplement balancer les infos, en outrepassant la partie
amusante d'écrire et lire dans un fichier ? (chose qui, à priori, est
totalement débile, voire inutile ?)

HTH,

S.

Continuer la lecture sur narkive:
Loading...