|
damien
|
 |
« Répondre #30 le: 02 Décembre 2006 à 01:24:12 » |
|
Bonsoir,
unexpected T_STRING ça dit pas grand chose ça...On peut avoir l'erreur entière et ce qu'il y a à la ligne indiquée par l'erreur ?
|
|
|
|
|
Journalisée
|
|
|
|
|
poky
Nouveau membre
Points gagnés: 0
Messages: 9
|
 |
« Répondre #31 le: 02 Décembre 2006 à 01:54:07 » |
|
Ah désolée, je suis allée un peu vite.
Alors le message d'erreur est : Parse error: parse error, unexpected T_STRING in d:\www\info-bulle.net\htdocs\traitement.php on line 251
et à cette ligne, il y a : $headers .='From: ' . Formulaire InfoBulle;
Merci encore pour votre aide.
|
|
|
|
|
Journalisée
|
|
|
|
|
damien
|
 |
« Répondre #32 le: 02 Décembre 2006 à 02:19:45 » |
|
Ah oui d'accord Tout ce qui est chaîne de caractères doit être entre guillemet ou simple quote, donc la bonne ligne sera cela : $headers .='From: Formulaire InfoBulle'; A appliquer aussi à vos autre lignes où vous avez dû faire la même chose.
|
|
|
|
|
Journalisée
|
|
|
|
poky
Nouveau membre
Points gagnés: 0
Messages: 9
|
 |
« Répondre #33 le: 02 Décembre 2006 à 02:36:03 » |
|
Re-bonsoir, Ah quand y'en a plus, y'en a encore !! Je suis vraiment désolée, ma ligne a été corrigé mais maintenant le reste ne va plus, c'est sûrement dû à ce que je dois faire pour les autres lignes. J'avoue ne plus savoir, j'ai enlevé des "", rajouter un ', mais j'ai dû faire des bêtises. Voici donc mon code. // Informations d'entête du mail: $headers ="MIME-Version: 1.0\r\n"; $headers .='From: Formulaire InfoBulle'; $headers .=' <' contact@info-bulle.net'>"\r\n"; $headers .='Reply-To: '. contact@info-bulle.net ."\r\n"; $headers .='Content-Type: text/plain; '; $headers .='charset="iso-8859-1"'."\r\n"; $headers .="Content-Transfer-Encoding: 8bit\r\n"; $headers .='X-Mailer:PHP/' . phpversion() . "\r\n"; Merci encore pour votre aide précieuse. Chris
|
|
|
|
|
Journalisée
|
|
|
|
|
Mehdi
|
 |
« Répondre #34 le: 02 Décembre 2006 à 21:57:22 » |
|
Bonsoir, Ca devrait etre mieux comme ça : // Informations d'entête du mail: $headers ="MIME-Version: 1.0\r\n"; $headers .='From: Formulaire InfoBulle'; $headers .=' <contact@info-bulle.net>' . "\r\n"; $headers .='Reply-To: contact@info-bulle.net' ."\r\n"; $headers .='Content-Type: text/plain; '; $headers .='charset="iso-8859-1"'."\r\n"; $headers .="Content-Transfer-Encoding: 8bit\r\n"; $headers .='X-Mailer:PHP/' . phpversion() . "\r\n";
bon courage
|
|
|
|
|
Journalisée
|
Aide informatique Nous n'avons trouvé aucun problème, mais nous allons continuez à vous aider !
|
|
|
poky
Nouveau membre
Points gagnés: 0
Messages: 9
|
 |
« Répondre #35 le: 03 Décembre 2006 à 12:27:04 » |
|
Bonjour,
Ah oui, c'est mieux comme ça. ça marche nickel. Par contre, dans le sujet du message que je reçois j'ai mon entête + Reply to..., ça fait long comme en-tête comme si un truc n'était pas fermé (" ou '). Enfin, c'est pas très grave. Un grand merci à Damien et Mehdi et longue vie au forum vraiment vous êtes supers. Christelle
|
|
|
|
|
Journalisée
|
|
|
|
gregory
Nouveau membre
Points gagnés: 1
Messages: 10
|
 |
« Répondre #36 le: 06 Décembre 2006 à 15:40:12 » |
|
bonjour je me présente je m'appelle Gregory et je viens de découvrir ce matin même le site très complet et sa communauté vraiment active. Avant tout vraiment merci de mettre à disposition des tutoriaux aussi pratique!
voilà je viens de tester le formulaire en local, tout marche bien toutes les infos sont bien retranscrit dans la base sauf qu'il m'affiche une erreur
Notice: Array to string conversion in c:\programfiles\easyphp1-7\www\formulaire\traitement.php on line 42 Votre demande a bien été prise en compte.
A la ligne 42 voici le fragment de code qui s'y trouve : $$index = mysql_real_escape_string(trim($valeur));
Si quelqu'un pouvait m'eclairer sur le type de l'erreur ??? car je connais rien au php.
Merci d'avance à ceux qui m'accorderont du temps pour répondre.
|
|
|
|
|
Journalisée
|
|
|
|
|
damien
|
 |
« Répondre #37 le: 06 Décembre 2006 à 18:43:16 » |
|
Bonjour et bienvenue sur le forum Gregory,
Si la ligne 42 est bien celle ci, ça voudrait dire que $valeur ou $index est une variable de type tableau, ce qui ne doit pas être le cas normalement. Par contre je ne peux rien vous dire comme ça, car la ligne est syntaxiquement correcte en tant que telle. Il faut nous mettre un peu plus de code et notamment ce qui se passe au dessus de cette ligne...
|
|
|
|
|
Journalisée
|
|
|
|
gregory
Nouveau membre
Points gagnés: 1
Messages: 10
|
 |
« Répondre #38 le: 07 Décembre 2006 à 10:42:24 » |
|
Oki merci Damien de ta réactivité, voilà pour mieux te permettre de comprendre je met le code complet de la page traitement.php (je me suis permit de rajouter quelques champs). <?php // Parametres mysql à remplacer par les vôtres define('DB_SERVER', 'localhost'); // serveur mysql define('DB_SERVER_USERNAME', 'root'); // nom d'utilisateur define('DB_SERVER_PASSWORD', ''); // mot de passe define('DB_DATABASE', 'formulaire'); // nom de la base
// Connexion au serveur mysql $connect = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD) or die('Impossible de se connecter : ' . mysql_error()); // sélection de la base de données mysql_select_db(DB_DATABASE, $connect);
$msg_erreur = "Error. The following fields must be obligatorily filled:<br/><br/>"; $msg_ok = "Votre demande a bien été prise en compte."; $message = $msg_erreur; // vérification des champs if (empty($_POST['civilite'])) $message .= "Your civility<br/>"; if (empty($_POST['prenom'])) $message .= "Your first name<br/>"; if (empty($_POST['nom'])) $message .= "Your name<br/>"; if (empty($_POST['adresse'])) $message .= "Your address<br/>"; if (empty($_POST['codepostal'])) $message .= "Your postnumber<br/>"; if (empty($_POST['ville'])) $message .= "Your city<br/>"; if (empty($_POST['email'])) $message .= "Your email<br/>"; if (empty($_POST['comments'])) $message .= "Your message<br/>"; // si un champ est vide, on affiche le message d'erreur if (strlen($message) > strlen($msg_erreur)) { echo $message; // sinon c'est ok } else {
foreach($_POST as $index => $valeur) { $$index = mysql_real_escape_string(trim($valeur)); }
$voyage = $_POST['voyage']; $sqlvoyage = ''; for ($i=0; $i<count($voyage); $i++) { $sqlvoyage .= $voyage[$i]; $sqlvoyage .= ', '; }
$sql = "INSERT INTO formulaire VALUES ('', '$civilite', '$prenom', '$nom', '$adresse', '$codepostal', '$ville', '$email', '$pays', '$workshop', '$sqlvoyage', '$comments', now())"; $res = mysql_query($sql);
if ($res) { echo $msg_ok; } else { echo mysql_error(); }
} ?>
sinon j'avais aussi une petite question supplémentaire, je voulais savoir comment je fais pour enlever 'la zone message' du mode obligatoire, c'est à dire que si le visiteur ne la remplit pas ce n'est pas grave? Merci d'avance Damien de ton aide 
|
|
|
|
|
Journalisée
|
|
|
|
|
damien
|
 |
« Répondre #39 le: 07 Décembre 2006 à 11:35:49 » |
|
Bonjour, Ce code fonctionne chez moi sur PHP5, quelle version de php as-tu ? Si ta version est inférieure à 4.3.0 alors c'est la fonction mysql_real_escape_string() qui ne va pas passer, remplace là par addslashes() 2. pour enlever l'obligation du message il faut retirer les lignes : if (empty($_POST['comments'])) $message .= "Your message<br/>";
|
|
|
|
|
Journalisée
|
|
|
|
gregory
Nouveau membre
Points gagnés: 1
Messages: 10
|
 |
« Répondre #40 le: 07 Décembre 2006 à 15:00:51 » |
|
Bah je bosse en local sur easyphp 1.7 et donc la version php est la 4.3.3 et la fonction addslashes() m'affiche le même message d'erreur.  Enfin bon pas grave, çà fonctionne quand même, et une fois sur serveur çà devrait etre cool Et merci pour le bout de code pour le message. Ce forum est vraiment bien encore merci !  Amicalement Grégory
|
|
|
|
« Dernière édition: 07 Décembre 2006 à 15:05:39 par gregory »
|
Journalisée
|
|
|
|
|
|
gregory
Nouveau membre
Points gagnés: 1
Messages: 10
|
 |
« Répondre #42 le: 07 Décembre 2006 à 15:53:00 » |
|
Merci Mehdi pour le liens  c'est le concurrent d'easyphp, non ? sinon si je bosse avec la version 1.7 c'est que sur le serveur sur lequel sera le site la version de php n'est pas mise à jour et le serveur est encore en 4.3.3. lol donc du coup pour eviter tout soucis j'ai aussi bosser dans la même versions. (Enfin bon bosser c'est un bien grand mot car je connais rien à la prog lol  ) en tout cas vraiment merci car vous etes très réactif et sa fait vraiment plaisir !  bonne continuation 
|
|
|
|
|
Journalisée
|
|
|
|
|
damien
|
 |
« Répondre #43 le: 07 Décembre 2006 à 16:09:43 » |
|
Concurrent entre guillemets car les deux sont gratuits. Disons juste que easyphp n'est plus très à jour en ce moment car il n'intègre pas la dernière version 5 de PHP qui change quand même pas mal de choses, WAMP5 si. Mais c'est vrai que si ton serveur distant est en 4.3.3, autant que tu restes sur easyphp 
|
|
|
|
|
Journalisée
|
|
|
|
gregory
Nouveau membre
Points gagnés: 1
Messages: 10
|
 |
« Répondre #44 le: 16 Janvier 2007 à 17:43:48 » |
|
Salut à tous  Voilà je retravaille sur ma version locale de formulaire et j'ai besoin de votre aide. Le formulaire mis à disposition dans le tuto est vraiment bien fait et j'aimerais seulement rajouter une ou deux fonctions que je ne sais pas faire  Voilà un formulaire d'exemple : http://aramis.obspm.fr/~sf2a/tresorerie/psecure.htmlJe ne suis pas un pro du formulaire html et je ne sais pas comment fait-on le systeme de calcul présent dans l'exemple ni comment on implémente un lien de paiement vers une banque comme dans l'exemple. Je sais que m'a demande et peut être exagéré néanmoins si vous pouviez m'apporter un peu de votre aide, je vous en serez vraiment reconnaissant 
|
|
|
|
|
Journalisée
|
|
|
|
|