Comparer 2 nombres l'un dans un fichier txt et l'autre dans BD
Fermé
nguim
Messages postés
16
Date d'inscription
mercredi 12 février 2014
Statut
Membre
Dernière intervention
25 février 2014
-
Modifié par nguim le 14/02/2014 à 13:49
Profil bloqué - 23 avril 2014 à 15:09
Profil bloqué - 23 avril 2014 à 15:09
A voir également:
- Comparer 2 nombres l'un dans un fichier txt et l'autre dans BD
- Fichier rar - Guide
- Fichier host - Guide
- Comment ouvrir un fichier apk ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Ouvrir un fichier .dat - Guide
2 réponses
essai aussi de chercher un peu par toi même...je te promet que c'est formateur...ce ne sont pas des gros développement, juste les base de l'algo à mettre en pratique...
sinon je crois que tu peux mettre ce poste en résolu (et idéalement publié la solution que je t'ai apporté en message privé afin d'en aider d'autre qui pourrai avoir le même souci...)
Bon courage !
sinon je crois que tu peux mettre ce poste en résolu (et idéalement publié la solution que je t'ai apporté en message privé afin d'en aider d'autre qui pourrai avoir le même souci...)
Bon courage !
nguim
Messages postés
16
Date d'inscription
mercredi 12 février 2014
Statut
Membre
Dernière intervention
25 février 2014
15 févr. 2014 à 10:45
15 févr. 2014 à 10:45
Voici la solution qu'un membre m'a donné et qui fonctionne parfaitement:
Solution 1 et 2
Solution 3
Maintenant je cherche comment faire pour que le fichier fichiernum.txt ne soit plus statique c'est à dire que
l'application soit en mesure de permettre à l'utilisateur de parcourir son poste de travail pour sélectionner
un fichier à traiter ayant un nom quelconque. Puisque actuellement le fichier fichiernum.txt se trouve dans
un même répertoire que mon code et les autres pages de l'application (dans le dossier www de wamp).
SVP aidez moi.
Solution 1 et 2
<?php
set_time_limit(0);
mysql_connect('localhost','root','');
mysql_select_db('gestnum');
//On ouvre le fichier en question (en lecture seule)
$handle = fopen("fichiernum.txt", "r");
$i=0;
echo '<h3 style="font-style: italic; font-size: 22px; text-shadow:Arial black 2.1px 2.1px 0px; color: green;">Tous les Resultats</h3>';
//on parcours tout le fichier (en faisant croire qu'il s'agit d'un csv pour faciliter le traitement)
while ($data = fgetcsv($handle, 1000, ",")) {
//on ne récupère que les 7 derniers caractères de chaque ligne avec la fonction substr
$rest = substr($data[0],-7);
//On établie une requéte qui ne remonte que les MDN finissant par les 7 derniers chiffre de notre $rest. Un seul résultat remonte donc...
$sql = mysql_query('SELECT * FROM 'coordab' WHERE 'MDN' LIKE "%'.$rest.'"');
$result =mysql_fetch_array($sql);
$i++;
//on affiche les résultats demandé
echo "<b>Ligne numéro: ".$i.'</b><br><br>';
echo '<b><span style="font-style: italic; font-size: 18px; text-shadow:Arial black 2.1px 2.1px 0px; color: blue;">MDN Testé: </b>'.'<b>'.$data[0].'</b>'.'<br/>';
echo '<b><span style="font-style: italic; font-size: 18px; text-shadow: Arial black 2.1px 2.1px 0px; color: blue;">IMSI Semblable: </b>'.' '.'<b>'.$result['IMSI'].'</b>'.'<br/>';
echo '<b><span style="font-style: italic; font-size: 18px; text-shadow: Arial black 2.1px 2.1px 0px; color: blue;">MDN attaché à cet IMSI: </b>'.'<b>'.$result['MDN'].'</b>'.'<br/>';
echo '<br/>';
//Pour la suite je te laisse faire, il n'y a rien de compliquer...petit indice, tu vas surement devoir utilisé la fonction array_compare() ou un peu plus classique, juste faire une égalité
//du genre "si ça == ça alors..." je te laisse travaillé le dernier exercice..
//Mais je suis convaincu que tu vas y arrivé...j'ai volontairement commenté le code pour que tu comprenne comment ça fonctionne...
}
//On ferme le fichier
fclose($handle);
?>
Solution 3
<?php
set_time_limit(0);
mysql_connect('localhost','root','');
mysql_select_db('gestnum');
//On ouvre le fichier en question (en lecture seule)
$handle = fopen("fichiernum.txt", "r");
$i=0;
$j=0;
//on parcours tout le fichier (en faisant croire qu'il s'agit d'un csv pour faciliter le traitement)
echo '<h3 style="font-style: italic; font-size: 22px; text-shadow:Arial black 2.1px 2.1px 0px; color: green;">Liste de Numéros Recyclables</h3>';
while ($data = fgetcsv($handle, 1000, ",")) {
//on ne récupère que les 7 derniers caractères de chaque ligne avec la fonction substr
$rest = substr($data[0],-7);
//On établie une requéte qui ne remonte que les MDN finissant par les 7 derniers chiffre de notre $rest. Un seul résultat remonte donc...
$sql = mysql_query('SELECT * FROM 'coordab' WHERE 'MDN' LIKE "%'.$rest.'"');
$result =mysql_fetch_array($sql);
$i++;
//on affiche les résultats demandé
/*
echo "<b>Ligne numéro: ".$i.'</b><br><br>';
echo '<b><span style="font-style: italic; font-size: 18px; text-shadow:Arial black 2.1px 2.1px 0px; color: blue;">MDN Testé: </b>'.'<b>'.$data[0].'</b>'.'<br/>';
echo '<b><span style="font-style: italic; font-size: 18px; text-shadow: Arial black 2.1px 2.1px 0px; color: blue;">IMSI Semblable: </b>'.' '.'<b>'.$result['IMSI'].'</b>'.'<br/>';
echo '<b><span style="font-style: italic; font-size: 18px; text-shadow: Arial black 2.1px 2.1px 0px; color: blue;">MDN attaché à cet IMSI: </b>'.'<b>'.$result['MDN'].'</b>'.'<br/>';
echo '<br/>';
*/
//Pour la suite je te laisse faire, il n'y a rien de compliquer...petit indice, tu vas surement devoir utilisé la fonction array_compare() ou un peu plus classique, juste faire une égalité
//du genre "si ça == ça alors..." je te laisse travaillé le dernier exercice..
//Mais je suis convaincu que tu vas y arrivé...j'ai volontairement commenté le code pour que tu comprenne comment ça fonctionne...
if ($data[0]==$result['MDN'])
{
$j++;
echo'<b>N°'. $j.'.</b><br>';
echo'<b><span style="font-style: italic; font-size: 18px; text-shadow:Arial black 2.1px 2.1px 0px; color: blue;">'. $data[0].' '.'=> MDN de la Ligne N°:'.$i.'<br><br></span></b>';
}
}
//On ferme le fichier
fclose($handle);
?>
Maintenant je cherche comment faire pour que le fichier fichiernum.txt ne soit plus statique c'est à dire que
l'application soit en mesure de permettre à l'utilisateur de parcourir son poste de travail pour sélectionner
un fichier à traiter ayant un nom quelconque. Puisque actuellement le fichier fichiernum.txt se trouve dans
un même répertoire que mon code et les autres pages de l'application (dans le dossier www de wamp).
SVP aidez moi.
15 févr. 2014 à 17:08
15 févr. 2014 à 17:24
<form action="maPage.php" method="post" name="nominput" enctype="multipart/form-data"> Sélectionnez le fichier : <input type="hidden" name="MAX_FILE_SIZE" value="300000"> <input type="file" name="nom_csv" /><br /> <input type="submit" value="Importer" /> <?php $file = $_FILES['nominput']['tmp_name'];//fichier_csv = nom du input type file. $contenu = fopen ($file, "r") or die("Can not open $file"); if (!$fp = fopen($file,"r")) { echo "Echec de l'ouverture du fichier"; } else { echo $file; } ?> </form>Voici ce qu'il affiche:
( ! ) Notice: Undefined index: fichier_csv in C:\wamp\www\etudephp\lireetecrire.php on line 12 Call Stack # Time Memory Function Location 1 0.0006 252336 {main}( ) ..\lireetecrire.php:0 ( ! ) Warning: fopen(): Filename cannot be empty in C:\wamp\www\etudephp\lireetecrire.php on line 13 Call Stack # Time Memory Function Location 1 0.0006 252336 {main}( ) ..\lireetecrire.php:0 2 0.0009 253360 fopen ( ) ..\lireetecrire.php:13 Can not open15 févr. 2014 à 18:09
Merci d'avance.
23 avril 2014 à 15:09
ta ligne :
doit etre écrit comme ça :