Code formulaire non-interprété [Résolu] & mémorisation valeurs - PHP - Programmation
Marsh Posté le 01-12-2007 à 22:04:05
Remplacer la première ) par ] dans la ligne
if(!empty($_POST['case')){ |
Marsh Posté le 01-12-2007 à 22:27:35
Merci pour ces réponses mais ca ne fonctionne toujours pas (pour les parenthèses, c'était un mauvais copié collé dans mon post).
c'est vraiment étrange comme problème, j'ai l'impression que ca vient de chez moi car tout les sites qui proposaient des formulaires étaient dans le même principe. Avez vous déjà essayé un fichier dans le genre chez vous? Peut être que j'ai oublié quelques ligne dans mes fichiers?
Marsh Posté le 02-12-2007 à 12:30:10
Bon bah en fait ca marche, en fait je testais le fichier dans un dossier quelconque de mon PC. J'ai déplacé mes 2 fichiers sous le répertoire "Web" de mon site et la ca fonctionne... C'était en effet un truc bête. QUelqu'un peux m'expliquer pourquoi ca ne fonctionne que sous le repertoire "Web"? c'est surement car ailleurs, le PHP n'est pas géré et pas interprété? Dans ce cas là, les essais en local ne sont pas possible, je me trompe?
Marsh Posté le 02-12-2007 à 12:43:29
dusty35 a écrit : Bon bah en fait ca marche, en fait je testais le fichier dans un dossier quelconque de mon PC. J'ai déplacé mes 2 fichiers sous le répertoire "Web" de mon site et la ca fonctionne... C'était en effet un truc bête. QUelqu'un peux m'expliquer pourquoi ca ne fonctionne que sous le repertoire "Web"? c'est surement car ailleurs, le PHP n'est pas géré et pas interprété? Dans ce cas là, les essais en local ne sont pas possible, je me trompe? |
C'est le serveur qui interprete le PHP, pas le navigateur.
Donc il faut que le fichier te soit "servi" par le serveur web.
Et sinon oui, prend l'habitude de mettre "<?php" en début de script au lieu de "<?"
Marsh Posté le 03-12-2007 à 13:47:57
Ok merci beaucoup, je comprend mieux maintenant. je me permets de poser une autre question:
Mon projet est de faire un formulaire de configuration pour un lecteur Flash. J'utilise 3 fichiers:
-Mon formulaire en html/php avec mes choix de couleurs, les URL de mes sons, etc...
-Mon fichier de traitement en PHP qui ecrit la config dans le dernier fichier en fonction de ce que j'ai mis dans le formulaire.
-mon fichier texte "config.txt" (dont flash a besoin pour les parametres)
J'ai réussi a faire ce que je voulais : formulaire avec case a cocher, pickcolor, textearea, etc.. mais le soucis c'est que quand j'entre dans mon formulaire, je n'arrive pas a garder en "memoire" mes config déjà inserées. Si j'ai 3 pistes de musique dans mon lecteur et que je veux juste en rajouter une, je suis obligé de remettre les 3 autres avant car il les perd dans mon formulaire. Je ne souhaite pas utiliser MySql car le fichier de config ne contient qu'un 20aine de ligne. J'ai bien essayé pour lire mon txt les "$fread" dans "value=**" mais il me lit tout et pas une ligne particuliere.
Quelqu'un aurait une idée?
EDIT: Le formulaire pour info
Marsh Posté le 03-12-2007 à 20:05:43
Je ne comprend vraiment pas, j'ai l'impression d'avoir tout essayé... ca ne doit pas être compliqué je pense mais trop pour moi. je ne sait même pas si j'utilise les bonnes méthodes déjà. SICKofitALL?
Marsh Posté le 04-12-2007 à 09:01:17
peux-tu détailler ton soucis ?
et s'il s'agit de conserver des données, pourquoi vouloir se passer d'une base de données, genre mySQL ?
Marsh Posté le 07-12-2007 à 22:44:36
il sagit bien de vouloir conserver les données. En fait, comme vous pouvez le voir sur la photo ci dessus il y a des champs pour l'URL du MP3. Prenons un exemple: Je mets l'url du son "Web/sons/divers/toto.mp3" et je renouvelle l'operation pour tout les champs désirés. je vais sur la page de mon lecteur et aucun soucis, toutes les pistes sont là, les couleurs définies sont celles que j'ai choisies, etc. Sauf que si je veux ajouter un sons, je suis obligé de rentrer a nouveau les X autres Url déjà renseignée+ la nouvelle url. Ceci car mon formulaire n'a pas gardé en mémoire les infos précedentes.
Voici les codes:
Extrait du formulaire :
Code :
|
Extrait du traitement (clf.php):
Code :
|
Extrait du fichier de config du lecteur Flash (cf.txt)
Code :
|
pour info, le fichier de config doit être noté de cette façon ( "|" entre les pistes).
Voilà, je ne sais pas si c'est clair pour vous maintenant... J'ai pioché plein de méthodes un peu partout et j'ai mixé, je suis pas sur d'avoir choisi les meilleures solutions.
Je ne souhaite pas utiliser MySql dans un 1er temps car je maitrise tellement peu le simple code... mais si vous me dites que c'est indispensable pour mon projet, je m'y mettrait. Merci de vous interresser à mon problème.
Marsh Posté le 08-12-2007 à 11:24:39
Bah si tu veux stocker des données d'une session à l'autre, c'est MySQL ou fichiers, mais dans 99% des cas une bdd est plus pratique et efficace.
Bref, tu stockes dans un fichier là si j'ai bien compris ? Et tu veux rechopper les valeurs de ce fichier pour renseigner les valeurs du form quand tu reviens dessus ?
Marsh Posté le 08-12-2007 à 11:55:11
Oui c'est exactement ça, je veux récuperer mes valeurs de form quand je reviens dessus et ma question est : Comment et dans quel fichier, "clf.php" ou "cf.txt"?. J'aimerais réussir de cette façon dans un 1er temps et je pense, que je m'attaquerais à MySql dès que j'aurais plus de maîtrise des codes de bases PHP.
Marsh Posté le 08-12-2007 à 11:58:17
Fais voir la tronche de ton fichier cf.txt.
Marsh Posté le 08-12-2007 à 12:30:52
En fait, "cf.txt" est écrit grace a "clf.php" grace au code :
Code :
|
Flash a besoin qu'il ai une structure particuliere, le voici au complet, renseigné à la main :
Code :
|
J'ai essayé de lire les lignes avec
Code :
|
mais il lit tout l'ensemble a suivre du genre :"mp3=sons/toto.mp3|sons/tata.mp3title=artiste - toto|artiste - tata" mais ce qui m'interresse c'est juste "sons/toto.mp3" , "sons/tata.mp3" etc. Et puis même si j'arrivais a extraire du caractere 5 au caratere 18, il faudrait toujours que mes sons fasse le même nbre de caracteres, choses quasi-infaisable.
Marsh Posté le 08-12-2007 à 12:45:24
Code :
|
Marsh Posté le 08-12-2007 à 13:11:22
Ca ne fonctionne pas voici l'extrait de mon code:
Code :
|
Voici le message d'erreur affiché dans le form:
Code :
|
J'ai essayé d'enlever "player" (le dossier où sont placés "cf.txt" & "clf.php" ) et de déplacer les fichiers direct sous la racine et là, plus de message d'erreur mais rien ne s'affiche dans le form.
Marsh Posté le 08-12-2007 à 13:33:40
Ben ouais, faut qu'il trouve le fichier, relativement à celui du script en cours d'exécution (ou utiliser $_SERVER['DOCUMENT_ROOT'] pour des chemins absolus si tu n'utilises pas d'alias Apache).
Après, évidemment que rien ne s'affiche dans le form, je t'ai juste indiqué comment récupérer ta liste de mp3s. Suffit d'insérer ce qu'il faut dans les value=.
Marsh Posté le 08-12-2007 à 13:39:30
Désolé je ne comprend pas, j'ai bien mis le code que tu m'a donné dans value=. Sans parler de trouver le fichier, que dois-je rajouter de plus dans mon code "value="<?php $lines = file('player
/cf.txt');$mp3s_line (...)" ?
Marsh Posté le 08-12-2007 à 14:38:30
Ouais, bon là il vaut mieux que tu revoies les bases du HTML et du PHP...
Marsh Posté le 08-12-2007 à 15:01:38
Heu bah... met moi sur la piste car, les bases, je pense que ca va a peu près mais je sais pas quoi chercher là... c'est vrai que ca fait que quelques semaines que je suis sur le html, je tatonne mais pour le php, c'est les 1er codes que je fais, donc...
Marsh Posté le 08-12-2007 à 19:08:51
Essaie déjà de comprendre ce que fait le bout de code que j'ai posté. Tu récupères un tableau avec la liste des paths vers les mp3, donc dans $mp3s[0] tu as le premier (s'il avait été saisi), dans $mp3s[1] le second, etc.
À toi de t'en servir où il faut.
Marsh Posté le 08-12-2007 à 19:15:48
sielfried a écrit : |
+1
Tu t'attaques a un trop gros morceau
Marsh Posté le 01-12-2007 à 21:54:20
Bonjour
Etant tout nouveau dans le php, je suis face à des problèmes. En effet, j'essaie de faire un formulaire simple a partir d'un tuto http://www.swsysteme.com/tutos/tutocase.php et le code n'est pas interprété : au moment où je clique sur "voir" tel que mon code est entré (ci-dessous) ca m'ouvre mon fichier "fenetre.php" tel quel. J'ai mis les balises html et là, rien ne s'affiche sur ma nouvelle page. C'est surement un truc tou bête mais je ne vois pas. J'ai essayé avec plein de codes différents mais les symptomes sont toujours les mêmes...
J'ai lu le topic d'aide du forum, dont la catégorie "IV) Mon code s'affiche dans le navigateur au lieu d'etre interpreté " mais mon site fonctionne très bien et j'obtient les infos php sans soucis (PHP V5.2).
Voici le "formulaire.htm" =>
<form method='POST' action='fenetre.php'>
<input type='checkbox' name='case' value='on'>
Case à cocher simple .<br>
Cochez-la ou pas puis cliquez sur Voir pour connaitre le résultat.
<br><input type='submit' name='exple1' value='Voir'>
</form>
Voici le "fenetre.php" =>
<?
if(!empty($_POST['case')){
echo"Vous avez coché la case";}
else
{echo"Vous n'avez pas coché la case";
}
?>
Merci d'avance et désolé si ce problème à déjà été rencontré mais je n'ai rien trouvé.
Message édité par dusty35 le 03-12-2007 à 22:07:52