• 0

[PHP] MySQL fait des siennes !


Cidji

Question

Posté(e)

Hello tout le monde !

Je vous expose donc mon problème.

Je suis actuellement en train de réaliser un site, et la structure en HTML/CSS est déjà réalisée. Une seule étape maintenant, inclure du PHP pour un système de news, d'images et de mini-messagerie.

Cependant, je rencontre un problème.

Je souhaite héberger mon site sur mon FTP. Mais le problème, c'est que ce FTP, c'est celui d'un ami, qui m'a donné les accès de ce dernier il y a longtemps pour que je puisse m'en servir à ma guise. De plus, c'est un FTP Free, et je suis chez Tele 2.

J'attaque actuellement le système de mini-messagerie, et j'ai incorporé le code PHP dans la catégorie qu'il fallait.

Seulement, MySQL fait des siennes !

Il me dit que ma table n'existe pas :

[cpp]Table 'meldeal.messagerie' doesn't exist[/cpp]

Et c'est à ce moment que je ne comprends pas.

J'ai bien renseigné mysql_connect('localhost', 'le login du FTP', 'le mot de passe'), mysql_connect_db('nom de la BDD') ainsi que while ($donnees = mysql_fetch_array($reponse)).

Donc en gros, j'ai une Base de Données qui s'appelle cba, une seule table pour l'instant qui se nomme messagerie.

Je veux faire mon site sur ce FTP : http://meldeal.free.fr/

Donc je crée le répertoire cba juste après cette adresse, et je mets tous mes fichiers dedans pour réaliser mon site.

Et dans les attributs de MySQL, je mets 'localhost', 'le login du FTP' et 'le mot de passe du FTP'.

Mais rien à faire, ça me donne toujours le même problème.

J'ai donc plusieurs question à vous poser.

[*]Est-ce parce que ce n'est pas mon FTP d'origine que ça pose des problèmes de compatiblité ?

[*]Si ce n'est pas le cas, existe-t-il un moyen de résoudre le problème évoqué ?

[*]Dans le menu "Alias" de Apache sur Easy PHP, peut-on mettre une adresse internet, ou bien il est obligé de mettre une adresse locale ?

Je vous remercie d'avance :)

Messages recommandés

Posté(e)

Si tu veux, j'ai appris avant le xHTML sur le SdZ, et ensuite, j'ai appris avec mon prof le HTML. Donc oui, il n'est pas à jour, mais vu que j'ai mieux assimilé un cours supervisé qu'un cours autonome, alors j'ai fait à sa façon, même si c'est pas celle qui faut.

Mais ne t'inquiètes pas, je savais pour les balises et tout ça :)

Posté(e)

Maintenant que le problème du php est réglé... je vais passer au (x)HTML... :)

Je voulais savoir qui t'as appris ? Car si c'est un prof... va ptet falloir qu'il se mette à jour, parce que la y a pas mal de "fautes". C'est rien contre toi hein, loin de moi cette idée je te rassure c'est tout à fait normal si on t'as appris comme ça :), juste que ça m'énerve que des profs peuvent faire apprendre de la merde a leurs élèves... quand on est professeur, il faut au moins avoir le mérite d'être sur que ce que l'on apprends est juste, et de se tenir à jour dans ses informations et connaissances.

Par contre si t'as appris sur le Siteduzero... alors la je vais te gronder parce que t'as pas retenu les leçon de Matheo :D

Déjà je te conseille de coder en XHTML plutot que HTML qui est lourd, compliqué à lire, assure une moins bonne interopérabilité entre les navigateurs, difficile à mettre à jour et c'est pas bo tout caca :o

Passer du HTML au XHTML sur Openweb.org

Ca peux paraitre fouilli et compliqué au début, mais après avoir assimilé tout ça, on remarque que coder est bien plus agréable, simple et propre qu'avant :)

En gros je te conseille de faire un tour de recherche vers les standards, l'accessibilité... ;)

Quelques liens sympas :

Alsacreations

Openweb

A List Apart

Posté(e)

Problème résolu !

Et c'était très con.. dans le formulaire, pour pseudo et message, je n'avais pas mis de "name=xxxx", du coup, le code ne pouvait pas savoir ce qu'il fallait appeler..

Je me suis rendu compte de ça après avoir lu la suite des chapitres sur le Site du Zéro.

Sinon, merci à tous pour m'avoir aidé :)

Posté(e)

Normalement oui.

J'ai mis 3 champs dans la table :

- id, en type INT (par contre la valeur est 11, mais je me rappelle pas avoir mis ça), auto-increment et en primaire.

- pseudo, en varchar, avec une valeur de 15.

- message, en varchar, et avec une valeur de 255.

Posté(e)

J'y pense, quand on envoie un message, dans le form="xxx.php" dans le formulaire, on doit mettre la même page ?

Enfin c'est ce que j'ai vu, tout mon code est dans le book.php, et là ça renvoie sur le book.php, mais vu que ça doit tout afficher sur la page je pense que c'est normal ^^

Posté(e)
Oui oui ^^

[cpp]

<?php

mysql_connect("localhost", "meldeal", "mot de passe");

mysql_select_db("meldeal");

$reponse = mysql_query("SELECT * FROM messagerie ORDER BY ID DESC LIMIT 0,10");

mysql_close();

while ($donnees = mysql_fetch_array($reponse))

{

?>

<?php echo $donnees['pseudo']; ?>

:

<?php echo $donnees['message']; ?>

<?php

}

?>

Posté(e)

Bannière

Accueil

Membres

Photos

Vidéos

Génèse

Partenariat

Messagerie

<?php

if (isset($_POST['pseudo']) AND isset($_POST['message']))

{

if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL)

{

mysql_connect("localhost", "meldeal", "mot de passe");

mysql_select_db("meldeal");

$message = htmlentities ($_POST['message']);

$pseudo = htmlentities ($_POST['pseudo']);

mysql_query("INSERT INTO messagerie VALUES('', '$pseudo', '$message')");

mysql_close();

}

}

?>

Mini-Messagerie

Pseudo :

Message :

<?php

mysql_connect("localhost", "meldeal", "mot de passe");

mysql_select_db("meldeal");

$reponse = mysql_query("SELECT * FROM messagerie ORDER BY ID DESC LIMIT 0,10");

mysql_close();

while ($donnees = mysql_fetch_array($reponse))

{

?>

<?php echo $donnees['pseudo']; ?>

:

<?php echo $donnees['message']; ?>

<?php

}

?>

Posté(e)

J'ai vérifié plusieurs fois, ça appelle bien messagerie les deux fois où ça le fait.

La BDD est existante vu que j'arrive à me connecter sous le login correspondant au FTP, et elle porte bien le nom meldeal.

J'ai changé dans mes fichers le nom de la BDD, donc ce n'est plus cba qui est appelé mais bien meldeal, et c'est ce qu'il faut.

J'ai revérifié mes identifiants, ils sont bons normalement.

J'ai juste une seule table de créée dans la BDD, mais c'est pas ça qui peut poser de problème ?

Posté(e)

Vérifie tout ce que j'ai dis dans mon précédents posts :

- si dans tes fichiers ça appelle la table meldeal.messagerie ou bien la table messagerie

- si la table appellé est bien existante dans la BDD en allant sur http://sql.free.fr (et en même temps vérifier que la BDD est bien créé, si t'arrives pas à te connecter c'est qu'elle est pas créé..)

- si la base de donnée indiquée dans tes fichiers est meldeal (le nom du ftp) et non cba.

- si tu t'es pas gouré dans un identifiants de connexion quelconque

Vérifie aussi que t'as mis au moins une news en allant sur http://sql.free.fr ^^

Si t'en as pas c'est normal que ça n'affiche rien :D

Posté(e)

Elle s'appelle messagerie, mais apparemment ça fonctionne, l'erreur ne revient plus.

Mais comme je l'ai dit, les messages laissés n'apparaissent pas.

Et le je sais pas du tout quel peut être le problème, sachant que ça ne me met pas d'erreur.

Posté(e)

Il n'y a pas à l'installer, c'est déjà installé : http://sql.free.fr

Ta base de donnée s'appelle donc meldeal

et ta table s'appelle meldeal.messagerie ou messagerie ? Parce que la c'est meldeal.messagerie...

Vérifie bien tout ça dans les paramètres de connexion à la BDD ;)

Et vérifie sur sql.free.fr que la table est bien créé

Posté(e)
As-tu pensé à activer mysql sur le compte free ?[/quotemsg]

La base est déjà activée oui :)

- Est-ce que tu as phpMyAdmin d'installé sur ton site ? Si non, tu devrais, c'est fort pratique :D[[/quotemsg]

Non je crois pas :D

PhpMyAdmdin c'est bien le zip où il y a tous les petits fichiers ?

Si c'est ça, je dois foutre ça dans la racine ?

Sinon, je viens de modifier quelques trucs, et j'ai plus d'erreur, par contre, les messages laissés n'apparaissent pas.

Posté(e)

- MySQL n'a (normalement) rien à voir avec l'accès au ftp, ce sont deux choses totalement différentes

- Est-ce que tu as phpMyAdmin d'installé sur ton site ? Si non, tu devrais, c'est fort pratique :D

- Uniquement local

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.