[PHP] je recommence à zéro....
Résolu/Fermé
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
-
13 févr. 2007 à 23:48
txiki Messages postés 6596 Date d'inscription mercredi 30 janvier 2002 Statut Contributeur Dernière intervention 22 février 2024 - 19 févr. 2007 à 07:28
txiki Messages postés 6596 Date d'inscription mercredi 30 janvier 2002 Statut Contributeur Dernière intervention 22 février 2024 - 19 févr. 2007 à 07:28
A voir également:
- [PHP] je recommence à zéro....
- Remettre a zero un pc - Guide
- Easy php - Télécharger - Divers Web & Internet
- Comment mettre un iphone a zero - Guide
- Remise a zero chromecast - Guide
- Remettre un pc a zero sans mot de passe - Guide
15 réponses
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
14 févr. 2007 à 07:56
14 févr. 2007 à 07:56
Bonjour,
Tu as créé une table. OK
Ensuite tu as du faire un insert ?
Si tu l'as fait :
Soit il s'est déroulé correctement et les données sont dans la table.
Soit il y a eu un code d'erreur et les données n'y sont pas.
Tu as créé une table. OK
Ensuite tu as du faire un insert ?
Si tu l'as fait :
Soit il s'est déroulé correctement et les données sont dans la table.
Soit il y a eu un code d'erreur et les données n'y sont pas.
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
14 févr. 2007 à 08:08
14 févr. 2007 à 08:08
Salut jlfond,
Ben justement non, on en est pas encore à l'insert mais en cliquant sur le lien d'un des logiciels, on devrait tomber sur une page avec les champs Nom: , Editeur: et comment: renseignés.
Or, ces champs sont vides.
Je pensais que le fait de cliquer sur un lien Editer, la page correspondante s'afficherait car dans le select j'y inclu l'id (même s'il n'apparaît pas dans cette seconde page).
Bouh! je ne sais pas si je suis très clair dans mes explications....
Ben justement non, on en est pas encore à l'insert mais en cliquant sur le lien d'un des logiciels, on devrait tomber sur une page avec les champs Nom: , Editeur: et comment: renseignés.
Or, ces champs sont vides.
Je pensais que le fait de cliquer sur un lien Editer, la page correspondante s'afficherait car dans le select j'y inclu l'id (même s'il n'apparaît pas dans cette seconde page).
Bouh! je ne sais pas si je suis très clair dans mes explications....
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
14 févr. 2007 à 08:13
14 févr. 2007 à 08:13
Mais tu es ou là.
Sur l'interface phpadmin ?
Ou est ce bouton 'éditer' ?
Quel produit tu utilises ?
Sur l'interface phpadmin ?
Ou est ce bouton 'éditer' ?
Quel produit tu utilises ?
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
14 févr. 2007 à 12:40
14 févr. 2007 à 12:40
Salut jlfond,
Non, non ! le lien Editer se trouve sur le tableau quand tu clique sur catalogue (http://txiki.free.fr ) .
Chaque logiciel a un lien Editer et Supprimer.
Ils marchent bien tous les deux sauf qu'ils sont vides (pour le moment il n'y a que 3 champs mais à terme il y en aura 23, la fiche complète quoi!.
Non, non ! le lien Editer se trouve sur le tableau quand tu clique sur catalogue (http://txiki.free.fr ) .
Chaque logiciel a un lien Editer et Supprimer.
Ils marchent bien tous les deux sauf qu'ils sont vides (pour le moment il n'y a que 3 champs mais à terme il y en aura 23, la fiche complète quoi!.
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
14 févr. 2007 à 13:07
14 févr. 2007 à 13:07
OK, j'ai essayé d'éditer un logiciel.
J'ai rempli les 3 champs et j'ai cliqué sur Envoyer.
Je suis arrivé sur la page
[h**p://txiki.free.fr/insert.php]
Et j'ai eu le message d'erreur
Impossible de se connecter à MySQL
Quel est ton code pour te connecter au serveur mysql
Je te mets une fonction que j'ai pris dans un de mes soft :
function dtb_connection(){
$the_mysql_server = VEP_SQL_SERVER ;
$the_mysql_user = VEP_SQL_USER;
$the_mysql_password = VEP_SQL_PASSWORD;
$the_mysql_database = VEP_SQL_DATABASE;
if ( $base = mysql_connect($the_mysql_server,$the_mysql_user,$the_mysql_password)) {
mysql_select_db($the_mysql_database,$base);
}
}
J'ai rempli les 3 champs et j'ai cliqué sur Envoyer.
Je suis arrivé sur la page
[h**p://txiki.free.fr/insert.php]
Et j'ai eu le message d'erreur
Impossible de se connecter à MySQL
Quel est ton code pour te connecter au serveur mysql
Je te mets une fonction que j'ai pris dans un de mes soft :
function dtb_connection(){
$the_mysql_server = VEP_SQL_SERVER ;
$the_mysql_user = VEP_SQL_USER;
$the_mysql_password = VEP_SQL_PASSWORD;
$the_mysql_database = VEP_SQL_DATABASE;
if ( $base = mysql_connect($the_mysql_server,$the_mysql_user,$the_mysql_password)) {
mysql_select_db($the_mysql_database,$base);
}
}
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
14 févr. 2007 à 15:03
14 févr. 2007 à 15:03
OK ! je crois que j'ai oublié de mettre le user et le pass (obligatoire chez free). Avec un htaccess et un fichier de passwords (liste de plusieurs personnes autorisées) ça ne fonctionne pas.
Coome pour le faire tourner en local avec easyphp je suis obligé de mettre root et '' (2 ')(pas de pass) j'oublie de renseigner ces 2 trucs avant d'uploader.
Mais en local ça fonctionne.
Tu vois, le Pb, c'est bien celui là: en cliquant sur un Editer tu aurais du tomber sur cette page mais renseignée or, tu a du remplir les champs puis soumettre (on arrive bien a insert.php) mais c'est pour un ajout d'enregistrement.
Coome pour le faire tourner en local avec easyphp je suis obligé de mettre root et '' (2 ')(pas de pass) j'oublie de renseigner ces 2 trucs avant d'uploader.
Mais en local ça fonctionne.
Tu vois, le Pb, c'est bien celui là: en cliquant sur un Editer tu aurais du tomber sur cette page mais renseignée or, tu a du remplir les champs puis soumettre (on arrive bien a insert.php) mais c'est pour un ajout d'enregistrement.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
14 févr. 2007 à 15:31
14 févr. 2007 à 15:31
Pour l'instant c'est peut être pas la peine de mettre un .htaccess.
Il faut d'abord que ca marche.
Ensuite tu protègeras avec un htaccess.
Un problème après l'autre...
Il faut d'abord que ca marche.
Ensuite tu protègeras avec un htaccess.
Un problème après l'autre...
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
14 févr. 2007 à 16:47
14 févr. 2007 à 16:47
Tout à fait d'accord mais si j'en ai parlé, c'est parcequ'a chaque fois, avant d'uploader, j'oublie de modifier ces parametres pour qu'il soit accessible sur txiki. Pour que vous voyez...
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
14 févr. 2007 à 22:16
14 févr. 2007 à 22:16
Bonsoir GALEEEEERE !
Je m'arrache les cheveux maintenant :-(((( arrrrg !
Je n'arrive plus a faire un tableau propre comme je l'avais fait (j'ai supprimé une ligne en fusionnant les 2 cellules de gauche (Editer et Supprimer.
1er exemple de ce que je devrais avoir: http://txiki.free.fr/tableau_logiciels.gif
2eme exemple (2 lignes mais plus de couleurs et désordonné en plus:
http://txiki.free.fr/tableau_logiciels_2.gif
Le code (fichier txt:
http://txiki.free.fr/liste.txt
Et tout ça parceque je veux limiter le nombre d'affichage a 10 ou 15 enregistrements par écran.
Bon, je viens de me rendre compte que free n'affiche pas le tableau comme easyphp chez moi. ( ? ? ? )
Depuis 2/3 jous, j'ai un comprtement bizarre avec Dream. Me reste plus qu'a le ré-installer. On verra demain.
Mais déjà, si quelqu'un pouvais m'analyser le code.... ce serait déjà SUPER.
Me dire ce qui ne va pas, les erreurs de syntaxe (ah ça, la syntaxe, c'est vraiment pas ma tasse de thé !
Bonne soirée et merci d'avance.
Je m'arrache les cheveux maintenant :-(((( arrrrg !
Je n'arrive plus a faire un tableau propre comme je l'avais fait (j'ai supprimé une ligne en fusionnant les 2 cellules de gauche (Editer et Supprimer.
1er exemple de ce que je devrais avoir: http://txiki.free.fr/tableau_logiciels.gif
2eme exemple (2 lignes mais plus de couleurs et désordonné en plus:
http://txiki.free.fr/tableau_logiciels_2.gif
Le code (fichier txt:
http://txiki.free.fr/liste.txt
Et tout ça parceque je veux limiter le nombre d'affichage a 10 ou 15 enregistrements par écran.
Bon, je viens de me rendre compte que free n'affiche pas le tableau comme easyphp chez moi. ( ? ? ? )
Depuis 2/3 jous, j'ai un comprtement bizarre avec Dream. Me reste plus qu'a le ré-installer. On verra demain.
Mais déjà, si quelqu'un pouvais m'analyser le code.... ce serait déjà SUPER.
Me dire ce qui ne va pas, les erreurs de syntaxe (ah ça, la syntaxe, c'est vraiment pas ma tasse de thé !
Bonne soirée et merci d'avance.
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
15 févr. 2007 à 08:00
15 févr. 2007 à 08:00
Bonjour,
Le code est difficile à lire du coup les erreurs sont plus difficile à voir.
Par exemple cette ligne il manque un " après le 50%
echo '<table width="50% bgcolor=\"#FFFFFF\" align=\"center\">'."\n";
Tu dois utiliser autrement les " et les '
Mets les " à l'extérieur et ca donne ca
echo "<table width='50%' bgcolor='#FFFFFF' align='center'>\n";
C'est quand même plus digeste.
(ah ça, la syntaxe, c'est vraiment pas ma tasse de thé !
Il va quand même falloir que tu y passes.
Si c'est pas pareil chez free que chez toi choisi free et reste y pour l'instant.
Le code est difficile à lire du coup les erreurs sont plus difficile à voir.
Par exemple cette ligne il manque un " après le 50%
echo '<table width="50% bgcolor=\"#FFFFFF\" align=\"center\">'."\n";
Tu dois utiliser autrement les " et les '
Mets les " à l'extérieur et ca donne ca
echo "<table width='50%' bgcolor='#FFFFFF' align='center'>\n";
C'est quand même plus digeste.
(ah ça, la syntaxe, c'est vraiment pas ma tasse de thé !
Il va quand même falloir que tu y passes.
Si c'est pas pareil chez free que chez toi choisi free et reste y pour l'instant.
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
15 févr. 2007 à 09:44
15 févr. 2007 à 09:44
Merci jlfond,
Merci pour la double cote oubliée (hi hi hi).
Si j'aimis le fichier au format texte sur txiki c'était surtout pour ne pas surcharger ici en mode code (mais cela serait plus simple pour corriger effectivement...).
Ensuite le système des \" pour les valeurs, c'était comme ça sur le modèle alors je l'ai laissé mais effectivement c'est pas propre, et pas ma façon de faire non plus.
De toutes façons, je dois ré-installer Dreamweaver car lorsque j'écris ou supprime des portions de code il me modifie des choses ailleurs (et je ne m'en rends compte qu'en mode visualisation, même si je corrige, c'est du temps perdu pour rien).
C'est con! sur le modèle sans limitation d'affichage, j'avais réussi a utiliser le formulaire Editer ( pour ajouter des datas via insert.php)
avec le message correspondant (en vert=OK, en rouge=Pb).
Je ne remplissait pas les champs mais ils étaient vides alors qu'ils auraient du contenir les valeurs de la ligne du Editer grace à l'id. (???)
Je reprendrais ça ce soir.
Merci infiniment en tous cas pour ton aide précieuse.
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Merci pour la double cote oubliée (hi hi hi).
Si j'aimis le fichier au format texte sur txiki c'était surtout pour ne pas surcharger ici en mode code (mais cela serait plus simple pour corriger effectivement...).
Ensuite le système des \" pour les valeurs, c'était comme ça sur le modèle alors je l'ai laissé mais effectivement c'est pas propre, et pas ma façon de faire non plus.
De toutes façons, je dois ré-installer Dreamweaver car lorsque j'écris ou supprime des portions de code il me modifie des choses ailleurs (et je ne m'en rends compte qu'en mode visualisation, même si je corrige, c'est du temps perdu pour rien).
C'est con! sur le modèle sans limitation d'affichage, j'avais réussi a utiliser le formulaire Editer ( pour ajouter des datas via insert.php)
avec le message correspondant (en vert=OK, en rouge=Pb).
Je ne remplissait pas les champs mais ils étaient vides alors qu'ils auraient du contenir les valeurs de la ligne du Editer grace à l'id. (???)
Je reprendrais ça ce soir.
Merci infiniment en tous cas pour ton aide précieuse.
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
17 févr. 2007 à 16:02
17 févr. 2007 à 16:02
Salut à tous,
Grace à jlfond j'ai corrigé la syntaxe pour l'affichage du tableau. Un grand merci à lui ;-)).
Seulement, j'ai d'autres Pb qui sont apparu (mais pas les mêmes que sur le site ci-dessous.
http://txiki.free.fr/liste.php
ci-dessous le titre du tableau et la première ligne s'affiche correctement (même si on ne le voit pas ici)....
. '. '.
Accès Logiciels
Notice: Undefined variable: ID in g:\sites web\txiki\liste.php on line 96
Editer
Notice: Undefined variable: ID in g:\sites web\txiki\liste.php on line 97
supprimer
Nom du logiciel: Suite MISSLER (TOPCAM, TOPSOLID, TOPTOOL), TOPCAM 3D
Editeur du logiciel: Missler
'.
*********************************
à partir d'ici, les erreurs s'ffichent en texte normal, pas dans le tableau.
*********************************
Notice: Undefined variable: ID in g:\sites web\txiki\liste.php on line 96
Editer
Notice: Undefined variable: ID in g:\sites web\txiki\liste.php on line 97
supprimer
voici les le code:
Si quelqu'un pouvait me dépanner, ce serait SUPER cool !
ça vient. doucement, mais vient !
Merci.
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Grace à jlfond j'ai corrigé la syntaxe pour l'affichage du tableau. Un grand merci à lui ;-)).
Seulement, j'ai d'autres Pb qui sont apparu (mais pas les mêmes que sur le site ci-dessous.
http://txiki.free.fr/liste.php
ci-dessous le titre du tableau et la première ligne s'affiche correctement (même si on ne le voit pas ici)....
. '. '.
Accès Logiciels
Notice: Undefined variable: ID in g:\sites web\txiki\liste.php on line 96
Editer
Notice: Undefined variable: ID in g:\sites web\txiki\liste.php on line 97
supprimer
Nom du logiciel: Suite MISSLER (TOPCAM, TOPSOLID, TOPTOOL), TOPCAM 3D
Editeur du logiciel: Missler
'.
*********************************
à partir d'ici, les erreurs s'ffichent en texte normal, pas dans le tableau.
*********************************
Notice: Undefined variable: ID in g:\sites web\txiki\liste.php on line 96
Editer
Notice: Undefined variable: ID in g:\sites web\txiki\liste.php on line 97
supprimer
voici les le code:
echo "<tr>"; echo "<td rowspan='2' bgcolor='#FF9900' align='center' width='10%'>"; // largeur de la première colonne (fusion de 2 lignes) // ligne 96 echo "<p><a href='fiche.php?id=$ID'> Editer </a><br>"; // <br> pour 1 interligne moins important entre les 2 liens // ligne 97 echo "<a href='delete.php?id=$ID'> supprimer </a></p>"; echo "</td>"; echo "<td bgcolor='#F0F0F0'><strong> Nom du logiciel: </strong>".$row['nom']."</td>"; // affiche le nom du logiciel 1ère à droite echo "</td>"; echo "</tr>'.\n"; echo "<tr>"; echo "<td bgcolor='#F0F0F0'><strong> Editeur du logiciel: </strong>".$row['editeur']."</td>"; // affiche l'éditeur du logiciel 2ème à droite echo "</td>"; echo "</tr>'.\n";
Si quelqu'un pouvait me dépanner, ce serait SUPER cool !
ça vient. doucement, mais vient !
Merci.
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
17 févr. 2007 à 18:19
17 févr. 2007 à 18:19
Bonjour txiki,
Si l'interpréteur php te dis qu'elle n'est pas définie c'est qu'au moment ou tu fais l'echo tu n'as pas encore affectée une valeur à ID.
Il me semble que c'est une simple notification. Pas une erreur.
Tu dois donc avoir tes deux liens qui s'affichent, mais pas comme tu le voudrais.
Il faut regarder plus haut dans le code ...
Je n'arrive pas à me connecter sur tes pages..
Ha si maintenant oui. Apparremment tu travvailles dessus.
Si l'interpréteur php te dis qu'elle n'est pas définie c'est qu'au moment ou tu fais l'echo tu n'as pas encore affectée une valeur à ID.
Il me semble que c'est une simple notification. Pas une erreur.
Tu dois donc avoir tes deux liens qui s'affichent, mais pas comme tu le voudrais.
Il faut regarder plus haut dans le code ...
Je n'arrive pas à me connecter sur tes pages..
Ha si maintenant oui. Apparremment tu travvailles dessus.
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
17 févr. 2007 à 19:04
17 févr. 2007 à 19:04
Salut jlfond,
Exact: c'est une notification.
Notice: Undefined variable: id in g:\sites web\txiki\liste.php on line 96
Ca marche grace a toi mais le Pb vient des 2 echo contenant un lien justement. Est-ce un hasard ou une mauvaise syntaxe. La voici la fameuse ligne:
çan s'approche mais mais en local j'ai seulement le titre puis la première ligne qui s'affiche dans un tableau. Le reste, se trouve à gauche, toujours les notify....
Si seulement tu pouvais voir ce qui cloche ! qu'est-ce que je serais HEUREUX ! avant de passer au reste.
PS: en cliquant sur le premier Editer, je tombe bien sur un formulaire (editer.php) avec tous les 3 champs.
Mais impossible de se connecter à la base ? ? ? ?
En tous cas merci encore pour ta patience ! ;-)))
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Exact: c'est une notification.
Notice: Undefined variable: id in g:\sites web\txiki\liste.php on line 96
Ca marche grace a toi mais le Pb vient des 2 echo contenant un lien justement. Est-ce un hasard ou une mauvaise syntaxe. La voici la fameuse ligne:
echo "<p><a href='fiche.php?id=$id'> Editer </a><br>"; // <br> pour 1 interligne moins important entre les 2 liens
çan s'approche mais mais en local j'ai seulement le titre puis la première ligne qui s'affiche dans un tableau. Le reste, se trouve à gauche, toujours les notify....
Si seulement tu pouvais voir ce qui cloche ! qu'est-ce que je serais HEUREUX ! avant de passer au reste.
PS: en cliquant sur le premier Editer, je tombe bien sur un formulaire (editer.php) avec tous les 3 champs.
Mais impossible de se connecter à la base ? ? ? ?
En tous cas merci encore pour ta patience ! ;-)))
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
17 févr. 2007 à 19:24
17 févr. 2007 à 19:24
Non il n'y a pas d'erreur de syntaxe là.
Le probléme n'est pas sur les echo.
Il faut voir ou tu récupères cette variable $id.
Et il semble que tu ne la récupère pas car elle serait affectée.
Cherche et liste moi les lignes de code ou elle se trouve.
Le probléme n'est pas sur les echo.
Il faut voir ou tu récupères cette variable $id.
Et il semble que tu ne la récupère pas car elle serait affectée.
Cherche et liste moi les lignes de code ou elle se trouve.
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
18 févr. 2007 à 12:42
18 févr. 2007 à 12:42
Salut jlfond et pardon pour le retard (invitation chez amis oblige !!!)
Bon, j'ai remplacé 'editer.php?link=$link' dans echo pensant qu'il récupérerait le bon id (celui correspondant à la ligne) mais il n'en est rien.
Ci-dessous, le script complet de liste.php. Editer pointe vers $link.
Un bon point cependant, on n'affiche bien les 10 premières lignes de la liste + les liens en dessous pour naviguer sur le reste de la liste.
Sauf que ces liens ne fonctionnent pas (???)
Pourrait-tu, STP, me regarder ce code et m'indiquer où se trouve le Pb ?
Merci mille fois ! http://txiki.free.fr/
PS: si tu veux, je peut te mettre le fichier fonctions.php qui regroupe 3 fonctions php.
Remarque, c'est peut-etre là que se trouve le Pb ?
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Bon, j'ai remplacé 'editer.php?link=$link' dans echo pensant qu'il récupérerait le bon id (celui correspondant à la ligne) mais il n'en est rien.
Ci-dessous, le script complet de liste.php. Editer pointe vers $link.
Un bon point cependant, on n'affiche bien les 10 premières lignes de la liste + les liens en dessous pour naviguer sur le reste de la liste.
Sauf que ces liens ne fonctionnent pas (???)
Pourrait-tu, STP, me regarder ce code et m'indiquer où se trouve le Pb ?
Merci mille fois ! http://txiki.free.fr/
PS: si tu veux, je peut te mettre le fichier fonctions.php qui regroupe 3 fonctions php.
Remarque, c'est peut-etre là que se trouve le Pb ?
<? //========================================= // includes du fichier fonctions //========================================= require 'fonctions.php'; //========================================= // information pour la connection à la DB //========================================= $host = 'localhost'; $user = 'root'; $pass = ''; $db = 'test'; //========================================= // initialisation des variables //========================================= $nombre = 10; // on va afficher 10 résultats par page. $limite = 0; if (!$limite); // si limite n'existe pas on l'initialise à zéro $path_parts = pathinfo($_SERVER['PHP_SELF']); // on cherche le nom de la page. $page = $path_parts["basename"]; //====================== // connection à la base // ===================== $link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() ); $delete = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() ); // ====================== // sélection de la table // ====================== mysql_select_db($db) or die ('Impossible de trouver la base: celle-ci a été supprimée, renomée ou déplacée'); //========================================================================== // requête SQL qui compte le nombre total d'enregistrements dans la table. //========================================================================== $select = 'SELECT count(id) FROM test'; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() ); $row = mysql_fetch_row($result); $total = $row[0]; //=================================================== // vérifier la validité de notre variable $limite; //=================================================== $verifLimite = verifLimite($limite,$total,$nombre); // si la limite passée n'est pas valide on la remet à zéro if(!$verifLimite) { $limite = 0; } //=================================================================================== // requête SQL qui ne prend que le nombre d'enregistrement necessaire à l'affichage. //=================================================================================== $select = 'select id,nom,editeur FROM test ORDER BY id ASC limit '.$limite.','.$nombre; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() ); //============================================== // si on a récupéré un resultat on l'affiche. //============================================== if($total) { echo "<table width='70%' bgcolor='#FFFFFF' align='center'>\n"; // première ligne on affiche les titres du tableau sur 2 colonnes echo "<tr text-align='center' padding='3px' class='blanc'>"; echo "<td bgcolor='#669999'><h2> Action </h2></td>"; echo "<td bgcolor='#669999'><h2> Logiciels </h2></td>"; echo "</tr>.\n"; // lecture et affichage des résultats sur 2 colonnes, 1 résultat par lot de 3 lignes. while($row = mysql_fetch_array($result)) { echo "<tr>"; echo "<td rowspan='2' bgcolor='#FF9900' align='center' width='10%'>"; // largeur de la première colonne (fusion de 2 lignes) echo "<p><a href='editer.php?link=$link'> Editer </a><br>"; // <br> pour 1 interligne moins important entre les 2 liens echo "<a href='delete.php?delete=$delete'> supprimer </a></p>"; echo "</td>"; echo "<td bgcolor='#F0F0F0'><strong> Nom du logiciel: </strong>".$row['nom']."</td>"; // affiche le nom du logiciel 1ère à droite echo "</td>"; echo "</tr>.\n"; echo "<tr>"; echo "<td bgcolor='#F0F0F0'><strong> Editeur du logiciel: </strong>".$row['editeur']."</td>"; // affiche l'éditeur du logiciel 2ème à droite echo "</td>"; echo "</tr>.\n"; echo "</table>.\n"; // fin du tableau. } } else echo "Pas d\'enregistrements dans cette table"; // on libère le résultat mysql_free_result($result); //====================================================================== // si le nombre d'enregistrement à afficher est plus grand que $nombre //====================================================================== if($total > $nombre) { affichePages($nombre,$page,$total); // affichage des liens vers les pages displayNextPreviousButtons($limite,$total,$nombre,$page); // affichage des boutons } mysql_close(); ?>
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
18 févr. 2007 à 14:25
18 févr. 2007 à 14:25
Bonjour txiki,
Concernant l'id
-------------
$select = 'select id,nom,editeur FROM test ORDER BY id ASC limit '.$limite.','.$nombre;
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
Là il manque la récupération des champs et de l'id en question.
list($id,$nom,$editeur) = mysql_fetch_row($result);
-------------
J'ai pas regardé plus mais ca déjà ca manque.
Concernant l'id
-------------
$select = 'select id,nom,editeur FROM test ORDER BY id ASC limit '.$limite.','.$nombre;
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
Là il manque la récupération des champs et de l'id en question.
list($id,$nom,$editeur) = mysql_fetch_row($result);
-------------
J'ai pas regardé plus mais ca déjà ca manque.
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
18 févr. 2007 à 15:56
18 févr. 2007 à 15:56
Bonjour jlfond,
Encore moi :-((
Là il manque la récupération des champs et de l'id en question.
Oui mais je la met où cette ligne ?
Désolé mais je suis un peu dur à la comprendure.....
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Encore moi :-((
Là il manque la récupération des champs et de l'id en question.
list($id,$nom,$editeur) = mysql_fetch_row($result);
Oui mais je la met où cette ligne ?
Désolé mais je suis un peu dur à la comprendure.....
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
18 févr. 2007 à 16:48
18 févr. 2007 à 16:48
OUPS ! ! !
la suite (sous forme de formulaire)
la suite (sous forme de formulaire)
<h1> Fiche complète du logiciel </h1> <h3 class="vert"><strong> Vous pouvez maintenant modifier une ou des informations ci-dessous </strong></h3> <p> </p> <form METHOD="POST" ACTION="editer-verif.php"> <input TYPE="hidden" name="id" value="<? echo mysql_query($query="id") ?>"> <p> Nom du logiciel: <input TYPE="text" name="nom" value="<? echo mysql_query($query="nom") ?>" SIZE="50"></p> <p> Editeur: <input TYPE="text" name="editeur" VALUE="<? echo mysql_query($query="editeur") ?>" SIZE="50"></p> <p>Votre commentaire: <input TYPE="text" name="comment" VALUE="<? echo mysql_query($query="comment") ?>" SIZE="50"></p> <p> <input TYPE="submit" VALUE="mettre à jour"> </p> </form>
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
18 févr. 2007 à 17:27
18 févr. 2007 à 17:27
Autant pour moi je n'avais pas vu qu'il y avait un
$row = mysql_fetch_array($result))
en dessous dans une boucle.
Laisse tomber cette ligne.
Qu'est ce que c'est que ces deux connexions au serveur
//======================
// connection à la base
// =====================
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
$delete = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
Tu devrais avoir ca, dans ton cas.
-----------------------
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'test';
$link = mysql_connect ($host,$user,$pass);
mysql_select_db($db,$link);
----------------------------
Ces variables $link est $delete n'ont rien à faire plus bas dans les liens. Il y avait les ID. Remets les et fait moi un listing propre. Je ne sais plus ou tu en es.
$row = mysql_fetch_array($result))
en dessous dans une boucle.
Laisse tomber cette ligne.
Qu'est ce que c'est que ces deux connexions au serveur
//======================
// connection à la base
// =====================
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
$delete = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
Tu devrais avoir ca, dans ton cas.
-----------------------
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'test';
$link = mysql_connect ($host,$user,$pass);
mysql_select_db($db,$link);
----------------------------
Ces variables $link est $delete n'ont rien à faire plus bas dans les liens. Il y avait les ID. Remets les et fait moi un listing propre. Je ne sais plus ou tu en es.
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
18 févr. 2007 à 18:00
18 févr. 2007 à 18:00
Salut jlfond et merci encore,
J'ai remis les id mais j'obtiens des notices maintenant.
Notice: Undefined variable: id in g:\sites web\txiki\liste.php on line 83 or la ligne 83 c'est justement celle des liens Editer et l'autre delete Notice: Undefined variable: id in g:\sites web\txiki\liste.php on line 84.
Bouuuuuh ! j'espère hardament que ça finisse par fonctionner.
Merci encore pour ta sacré patience ! Je ne le dirais jamais assez.
J'ai remis les id mais j'obtiens des notices maintenant.
Notice: Undefined variable: id in g:\sites web\txiki\liste.php on line 83 or la ligne 83 c'est justement celle des liens Editer et l'autre delete Notice: Undefined variable: id in g:\sites web\txiki\liste.php on line 84.
<? //========================================= // includes du fichier fonctions //========================================= require 'fonctions.php'; //========================================= // information pour la connection à la DB //========================================= $host = 'localhost'; $user = 'root'; $pass = ''; $db = 'test'; $link = mysql_connect ($host,$user,$pass); mysql_select_db($db,$link) or die ('Impossible de trouver la base: celle-ci a été supprimée, renomée ou déplacée'); //========================================= // initialisation des variables //========================================= $nombre = 10; // on va afficher 10 résultats par page. $limite = 0; if (!$limite); // si limite n'existe pas on l'initialise à zéro $path_parts = pathinfo($_SERVER['PHP_SELF']); // on cherche le nom de la page. $page = $path_parts["basename"]; //========================================================================== // requête SQL qui compte le nombre total d'enregistrements dans la table. //========================================================================== $select = 'SELECT count(id) FROM test'; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() ); $row = mysql_fetch_row($result); $total = $row[0]; //=================================================== // vérifier la validité de notre variable $limite; //=================================================== $verifLimite = verifLimite($limite,$total,$nombre); // si la limite passée n'est pas valide on la remet à zéro if(!$verifLimite) { $limite = 0; } //=================================================================================== // requête SQL qui ne prend que le nombre d'enregistrement necessaire à l'affichage. //=================================================================================== $select = 'select id,nom,editeur FROM test ORDER BY id ASC limit '.$limite.','.$nombre; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() ); //============================================== // si on a récupéré un resultat on l'affiche. //============================================== if($total) { echo "<table width='70%' bgcolor='#FFFFFF' align='center'>\n"; // première ligne on affiche les titres du tableau sur 2 colonnes echo "<tr text-align='center' padding='3px' class='blanc'>"; echo "<td bgcolor='#669999'><h2> Action </h2></td>"; echo "<td bgcolor='#669999'><h2> Logiciels </h2></td>"; echo "</tr>.\n"; // lecture et affichage des résultats sur 2 colonnes, 1 résultat par lot de 3 lignes. while($row = mysql_fetch_array($result)) { echo "<tr>"; echo "<td rowspan='2' bgcolor='#FF9900' align='center' width='10%'>"; // largeur de la première colonne (fusion de 2 lignes) echo "<p><a href='editer.php?id=$id'> Editer </a><br>"; // <br> pour 1 interligne moins important entre les 2 liens echo "<a href='delete.php?id=$id'> supprimer </a></p>"; echo "</td>"; echo "<td bgcolor='#F0F0F0'><strong> Nom du logiciel: </strong>".$row['nom']."</td>"; // affiche le nom du logiciel 1ère à droite echo "</td>"; echo "</tr>.\n"; echo "<tr>"; echo "<td bgcolor='#F0F0F0'><strong> Editeur du logiciel: </strong>".$row['editeur']."</td>"; // affiche l'éditeur du logiciel 2ème à droite echo "</td>"; echo "</tr>.\n"; echo "</table>.\n"; // fin du tableau. } } else echo "Pas d\'enregistrements dans cette table"; // on libère le résultat mysql_free_result($result); //====================================================================== // si le nombre d'enregistrement à afficher est plus grand que $nombre //====================================================================== if($total > $nombre) { affichePages($nombre,$page,$total); // affichage des liens vers les pages displayNextPreviousButtons($limite,$total,$nombre,$page); // affichage des boutons } mysql_close(); ?>
Bouuuuuh ! j'espère hardament que ça finisse par fonctionner.
Merci encore pour ta sacré patience ! Je ne le dirais jamais assez.
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
18 févr. 2007 à 18:16
18 févr. 2007 à 18:16
OK, mais je préfère ca.
Maintenant tu vas changer le code de la boucle while
while($row = mysql_fetch_array($result))
C'est là qu'il faut récupérer les champs.
while( list($id,$nom,$editeur) = mysql_fetch_row($result))
Met ca et refait un listing. Ca doit marcher là.
Maintenant tu vas changer le code de la boucle while
while($row = mysql_fetch_array($result))
C'est là qu'il faut récupérer les champs.
while( list($id,$nom,$editeur) = mysql_fetch_row($result))
Met ca et refait un listing. Ca doit marcher là.
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
18 févr. 2007 à 18:21
18 févr. 2007 à 18:21
Remplace aussi
echo "<td bgcolor='#F0F0F0'><strong> Nom du logiciel: </strong>".$row['nom']."</td>";
Par
echo "<td bgcolor='#F0F0F0'><strong> Nom du logiciel: </strong>$nom</td>";
et
echo "<td bgcolor='#F0F0F0'><strong> Editeur du logiciel: </strong>".$row['editeur']."</td>";
par
echo "<td bgcolor='#F0F0F0'><strong> Editeur du logiciel: </strong>$editeur</td>";
Voilà là c'est bon..
echo "<td bgcolor='#F0F0F0'><strong> Nom du logiciel: </strong>".$row['nom']."</td>";
Par
echo "<td bgcolor='#F0F0F0'><strong> Nom du logiciel: </strong>$nom</td>";
et
echo "<td bgcolor='#F0F0F0'><strong> Editeur du logiciel: </strong>".$row['editeur']."</td>";
par
echo "<td bgcolor='#F0F0F0'><strong> Editeur du logiciel: </strong>$editeur</td>";
Voilà là c'est bon..
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
19 févr. 2007 à 02:02
19 févr. 2007 à 02:02
Salut jlfond,
Bon ! maintenant j'ai un tableau correct. Tes corrections ne fonctionnaient pas du tout et voici mon code actuel pour la liste:
Maintenant il faut que je fasse fonctionner ces boutons suivant et précédent ET les n° de pages.
J'ai un fichier "fonctions.php" dont le code suit:
Si quelqu'un d'habitué a ce genre de chose (écriture des fonctions spécifique en php pouvait me regarder cette seconde partie.... ce serait HYPER cool !
Merci d'avance.
Bon ! maintenant j'ai un tableau correct. Tes corrections ne fonctionnaient pas du tout et voici mon code actuel pour la liste:
<? //========================================= // includes du fichier fonctions //========================================= require 'fonctions.php'; //========================================= // information pour la connection à le DB //========================================= $host = 'localhost'; $user = 'root'; $pass = ''; $db = 'test'; //========================================= // initialisation des variables //========================================= $nombre = 10; // on va afficher 10 résultats par page. $limite = 0; if (!$limite); // si limite n'existe pas on l'initialise à zéro $path_parts = pathinfo($_SERVER['PHP_SELF']); // on cherche le nom de la page. $page = $path_parts["basename"]; //====================== // connection à la DB //====================== $link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() ); // connection à la base mysql_select_db($db) or die ('Impossible de se connecter à la base'); // sélection de la table //========================================================================== // requête SQL qui compte le nombre total d'enregistrements dans la table. //========================================================================== $select = 'SELECT count(id) FROM test'; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() ); $row = mysql_fetch_row($result); $total = $row[0]; //=================================================== // vérifier la validité de notre variable $limite; //=================================================== $verifLimite = verifLimite($limite,$total,$nombre); // si la limite passée n'est pas valide on la remet à zéro if(!$verifLimite) { $limite = 0; } //====================================================================================== // requête SQL qui ne prend que le nombre d'enregistrement necessaire à l'affichage. //====================================================================================== $select = 'select nom,editeur,comment FROM test ORDER BY id ASC limit '.$limite.','.$nombre; $result = mysql_query($select) or die ('Erreur : '.mysql_error() ); //============================================= // si on a récupéré un resultat on l'affiche. //============================================= if($total) { echo "<table width='70%' bgcolor='#FFFFFF' border='1' cellspacing='0' cellpadding='4' align='center'>\n"; // première ligne on affiche les titres Accès et Logiciels dans 2 colonnes echo "<tr text-align='center' padding='3px' class='blanc'>"; echo "<td bgcolor='#669999'><h2> Action </h2></td>"; echo "<td bgcolor='#669999'><h2> Logiciels </h2></td>"; echo "</tr>.\n"; // lecture et affichage des résultats sur 2 colonnes, 1 résultat par lot de 3 lignes. while($row = mysql_fetch_array($result)) { echo "<tr>"; echo "<td rowspan='2' bgcolor='#FF9900' align='center' width='10%'>"; // largeur de la première colonne (fusion de 3 lignes) echo "<p><a href='editer.php?id=['id']'> Editer </a></p>"; // <P> pour 1 saut plus important entre les 2 liens echo "<p><a href='delete.php?id=['id']'> supprimer </a></p>"; echo "</td>"; echo "<td bgcolor='#F0F0F0'><strong> Nom du logiciel: </strong>".$row['nom']."</td>"; // affiche le nom du logiciel (1ere cellule) echo "</td>"; echo "</tr>'.\n"; echo "<tr>"; echo "<td bgcolor='#F0F0F0'><strong> Editeur du logiciel: </strong>".$row['editeur']."</td>"; // affiche l'éditeur du logiciel (la 2eme cellule) echo "</td>"; echo "</tr>\n"; } echo "</table>\n"; // fin du tableau. } else echo "Pas d\'enregistrements dans cette table"; // on libère le résultat mysql_free_result($result); //======================================================================== // si le nombre d'enregistrement à afficher est plus grand que $nombre //======================================================================== if($total > $nombre) { affichePages($nombre,$page,$total); // affichage des liens vers les pages displayNextPreviousButtons($limite,$total,$nombre,$page); // affichage des boutons } ?>J'ai plein de points (.) et ' qui se balladent sur la page m'enfin (je ne vois pas d'où ils viennent). Voir sur http://txiki.free.fr
Maintenant il faut que je fasse fonctionner ces boutons suivant et précédent ET les n° de pages.
J'ai un fichier "fonctions.php" dont le code suit:
<? // ================================================================================= // fonction qui affiche boutons Précédent Suivant // ================================================================================= function displayNextPreviousButtons($limite,$total,$nb,$page) { $limiteSuivante = $limite + $nb; $limitePrecedente = $limite - $nb; echo "<table><tr>.\n"; if($limite != 0) { echo "<td valign='top'>.\n"; echo "<form action=".$page." method='post'>.\n"; echo "<input type='submit' value='précédente'>.\n"; echo "<input type='hidden' value=".$limitePrecedente." name='limite'>.\n"; echo "</form>.\n"; echo "</td>.\n"; } if($limiteSuivante < $total) { echo "<td valign='top'>.\n"; echo "<form action=".$page." method='post'>.\n"; echo "<input type='submit' value='suivante'>.\n"; echo "<input type='hidden' value=".$limiteSuivante." name='limite'>.\n"; echo "</form>.\n"; echo "</td>.\n"; } echo "</tr></table>.\n"; } // ========================================================================================= // fonction qui affiche les liens vers les pages //========================================================================================== function affichePages($nb,$page,$total) { $nbpages=ceil($total/$nb); $numeroPages = 1; $compteurPages = 1; $limite = 0; echo "<table border = '0' ><tr>.\n"; while($numeroPages <= $nbpages) { echo "<td><a href = ".$page.'?limite='.$limite.'>'.$numeroPages."</a></td>.\n"; $limite = $limite + $nb; $numeroPages = $numeroPages + 1; $compteurPages = $compteurPages + 1; if($compteurPages == 10) { $compteurPages = 1; echo "<br>.\n"; } } echo "</tr></table>.\n"; } // ================================================================================= //récupération de $limite // ================================================================================= if(isset($_POST['limite'])) $limite=$_POST['limite']; else $limite=0; // ================================================================================ function verifLimite($limite,$total,$nombre) { // je verifie si limite est un nombre. if(is_numeric($limite)) { // si $limite est entre 0 et $total, $limite est ok sinon $limite n'est pas valide. if(($limite >=0) && ($limite <= $total) && (($limite%$nombre)==0)) { // j'assigne 1 à $valide si $limite est entre 0 et $max $valide = 1; } else { // sinon j'assigne 0 à $valide $valide = 0; } } else { // si $limite n'est pas numérique j'assigne 0 à $valide $valide = 0; } // je renvois $valide return $valide; } ?>
Si quelqu'un d'habitué a ce genre de chose (écriture des fonctions spécifique en php pouvait me regarder cette seconde partie.... ce serait HYPER cool !
Merci d'avance.
jlfond
Messages postés
230
Date d'inscription
lundi 24 janvier 2005
Statut
Membre
Dernière intervention
19 juin 2020
28
19 févr. 2007 à 07:20
19 févr. 2007 à 07:20
Comment ça marche pas du tout ?
Tu es sur d'avoir bien mis ce que je t'ai donné c'est un mysql_fetch_row à la pace d'un mysql_fetch_array pour extraire les champs.
(Les deux sont possible mais c'est plus lisible comme je te l'ai indiqué. Je suis sur de mon affaire !!).
Ton code tel que je le lis là. Pour moi il ne peut pas fonctionné correctement.L 'id ci dessous n'a pas de valeur.
echo "<p><a href='editer.php?id=['id']'> Editer </a></p>";
Met au moins un $row['id'] avec la même construction pour l'echo que tu utilises pour les autres echo !!
Tu es sur d'avoir bien mis ce que je t'ai donné c'est un mysql_fetch_row à la pace d'un mysql_fetch_array pour extraire les champs.
(Les deux sont possible mais c'est plus lisible comme je te l'ai indiqué. Je suis sur de mon affaire !!).
Ton code tel que je le lis là. Pour moi il ne peut pas fonctionné correctement.L 'id ci dessous n'a pas de valeur.
echo "<p><a href='editer.php?id=['id']'> Editer </a></p>";
Met au moins un $row['id'] avec la même construction pour l'echo que tu utilises pour les autres echo !!
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
518
19 févr. 2007 à 07:28
19 févr. 2007 à 07:28
Salut jlfond !
Maintenant que tu me dit ça..... pourtant j'ai fait un copier/coller de ta correction.....
Bon, je vais regarder ce soir à la maison car au bureau je n'ai rien. Les tests je les fait à la maison.
Je vais revoir tout ce que tu me dis... ;-)
Bonne journée !
Maintenant que tu me dit ça..... pourtant j'ai fait un copier/coller de ta correction.....
Bon, je vais regarder ce soir à la maison car au bureau je n'ai rien. Les tests je les fait à la maison.
Je vais revoir tout ce que tu me dis... ;-)
Bonne journée !