flopad
Messages postés528Date d'inscriptionmercredi 28 septembre 2005StatutMembreDernière intervention 6 mars 2009
-
11 janv. 2006 à 17:51
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 2015
-
12 janv. 2006 à 14:38
Bonjour, j'ai le code suivant, comment est ce que je peux l'adapter pour une basse access et non SQL...??
<?php
$base="D:\\Qualite\Annuaire\Annuaire.mdb";
$Annuaire="Annuaire";
//connection au serveur:
$cnx = odbc_connect( "DSN_Annuaire","" ,"") or die ("Impossible de se connecter à la base de donnée") ;
$req = mysql_query("SELECT * FROM $Annuaire"); // on sélectionne les enregistrements
$res = mysql_numrows($req); // on compte le nombre de résultats
$file = ("contacts.xls"); // le fichier doit déjà exister
if(!$myfile = fopen($file, "w")) //on ouvre le fichier
{
print("'$filename' n'existe pas!\n");
exit;
}
WHILE($res!=$i) // 5. chaque fois que "$res" est dif. de "$i", donc qu'il y a un enreg.
//ecriture
fputs($myfile,"$Societe\t $Activite\t $Localisation\n"); //une tabulation \t pour changer de colonne et un retour chariot \n pour changer de ligne
$i++; // on ajoute un au compteur et on retourne à WHILE
}
//connection au serveur:
$cnx = odbc_connect( "DSN_Annuaire","" ,"") or die ("Impossible de se connecter à la base de donnée") ;
$i = "abcdefghijkl" ;
$requete = "SELECT * FROM $Annuaire" ; // on sélectionne les enregistrements
$req = odbc_do($cnx, $requete);
$res = odbc_num_rows($req); // on compte le nombre de résultats
$file = ("..\Annu\Annuaire.xls"); // le fichier doit déjà exister
if(!$myfile = fopen($file, "w")) //on ouvre le fichier
{
print("'$file' n'existe pas!\n");
exit;
}
WHILE($res!=$i) // 5. chaque fois que "$res" est dif. de "$i", donc qu'il y a un enreg.
//ecriture
fputs($myfile,"$Nom\t $Societe\t $Service\t $Fixe\t $Fixe_abrege\t $Fax\t $Portable\t $Abrege_fp\t $Mail\n"); //une tabulation \t pour changer de colonne et un retour chariot \n pour changer de ligne
$i++; // on ajoute un au compteur et on retourne à WHILE
}
cs_kairel
Messages postés6Date d'inscriptionvendredi 11 mars 2005StatutMembreDernière intervention12 janvier 2006 12 janv. 2006 à 08:49
Salut
Je vais pas t aider enormement mais au cas ou tu utilisises php5 il y a
maintenant une couche d abstraction sur les bases de données que tu
peux peut etre utiliser ,car que tu attaques sql, access ou n importe
quelle base de données la syntaxe reste la meme , il y a juste un
script de conf a mofifier c est tout
//connection au serveur:
$cnx = odbc_connect( "DSN_Annuaire","" ,"") or die ("Impossible de se connecter à la base de donnée") ;
$requete = "SELECT * FROM $Annuaire" ; // on sélectionne les enregistrements
$req = odbc_do($cnx, $requete);
$res = odbc_num_rows($req); // on compte le nombre de résultats
$file = ("..\Annu\Annuaire.xls"); // le fichier doit déjà exister
if(!$file = fopen($file, "w")) //on ouvre le fichier
{
print("'$file' n'existe pas!\n");
exit;
}
$i = "0" ;
WHILE($res!=$i) // chaque fois que "$res" est dif. de "$i", donc qu'il y a un enreg.
//ecriture
fputs($file,"$Nom\t $Societe\t $Service\t $Fixe\t $Fixe_abrege\t $Fax\t $Portable\t $Abrege_fp\t $Mail\n"); //une tabulation \t pour changer de colonne et un retour chariot \n pour changer de ligne
$i++; // on ajoute un au compteur et on retourne à WHILE
}
?>
Ce me donne 'fatal error : maximum execution of 30 seconds exceeded.... on line 38 (ligne du i++).
J'ai du définir ma variable $i, je lui ai donc donné la valeur 0 , j'ai peut etre fait une boulette, je comprends pas pourquoi ca ne fonctionne pas.....
//ecriture
fputs($file,"$Nom\t
$Societe\t $Service\t $Fixe\t $Fixe_abrege\t $Fax\t $Portable\t
$Abrege_fp\t $Mail\n"); //une tabulation \t pour changer de colonne
et un retour chariot \n pour changer de ligne
$i++; // on ajoute un au compteur et on retourne à WHILE
}
?>"
$i = 0;
while ( $i < $res ) {
//}
Ou alors :
for ( $i = 0; $i < $res ; $i++) { // }
Mais je ne comprend pas pourquoi tu ne fais pas :
while ( odbc_fetch_row($req) ) {
$var = odbc_result($req, 'var');
//etc...
}
//connection au serveur:
$cnx = odbc_connect( "DSN_Annuaire","" ,"") or die ("Impossible de se connecter à la base de donnée") ;
$requete = "SELECT * FROM $Annuaire" ; // on sélectionne les enregistrements
$req = odbc_do($cnx, $requete);
$res = odbc_num_rows($req); // on compte le nombre de résultats
$file = ("..\Annu\Annuaire.xls"); // le fichier doit déjà exister
if(!$file = fopen($file, "w")) //on ouvre le fichier
{
print("'$file' n'existe pas!\n");
exit;
}
while ( odbc_fetch_row($req) ) { // chaque fois que "$res" est dif. de "$i", donc qu'il y a un enreg.
//ecriture
fputs($file,"$Nom\t $Societe\t $Service\t $Fixe\t $Fixe_abrege\t $Fax\t $Portable\t $Abrege_fp\t $Mail\n"); //une tabulation \t pour changer de colonne et un retour chariot \n pour changer de ligne
}
?>
Ca me sort l'erreur suivante : Parse error : syntax error, unexpected $end in... on line 40
flopad
Messages postés528Date d'inscriptionmercredi 28 septembre 2005StatutMembreDernière intervention 6 mars 2009 12 janv. 2006 à 13:48
Mille excuses!!!! Je suis encore plus mauvais que ce que je pensais, j'ai oublié une } à la fin......
Merci pour tout!!
Par contre, comment peut on faire pour que lorsque l'utilisateur clique sur le bouton qui lance ce script, cela propose de télécharger le fichier ou alors que ca affiche un lien de téléchargement en bas de page...??