Formulaire de commande en PHP

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Formulaire de commande en PHP

par Elo478 » 06 juil. 2006, 17:00

Merci à vous deux! En fait ces variables j'ai bien l'impression qu'elles sont propres au langage ASP et qu'elles concernent les droitrs d'écriture et de lecture du fichier. J'ai supprimé les 4 premières lignes de mon code et le page s'affiche enfin, mais maintenant avec des erreurs venant des pages PHP incluses (requêtes et fonctions non défnies). Bon je crois que là je dois complètement réécrire le script en PHP, mais je ne m'y connais pas suffisamment pour le faire. Tanpis, merci quand même!

par jojolapine » 06 juil. 2006, 11:27

par homogénéiser, je veu dire que tu utilises deux types de balises, les balises normales: <?php ?> et les short tags: <? ?>
pour une meilleur portabilitée du code, je te conseille vivement de n'utiliser que les première... Mais tu faits ce que tu veux :lol:

par goeb » 06 juil. 2006, 11:15

mets plutôt ça :
$ForReading = 1;
$ForWriting = 2;
$ForAppending = 3;
cela dit, ces variables ne sont utilisées nulle part. est-ce bien nécessaire de les mettre ? à quoi servent-elles en ASP ?

ensuite, la fonction ASP "request()", il faut la définir quelque part.
à quoi est-ce que ça correspond en ASP ?

par Elo478 » 06 juil. 2006, 01:02

Ah pardon, j'avais oublié! La ligne 35 est la suivante (début du code):
const $ForReading = 1, $ForWriting = 2, $ForAppending = 3; 
Qu'entends-tu par homogénéiser jojolapine stp? Tu veux dire mettre <?php au début et <?php ?> à la fin du code?

par jojolapine » 05 juil. 2006, 23:34

quelle est la ligne 35?, ensuite essaye d'homogénéiser tes balises php, en <?php

par Elo014 » 05 juil. 2006, 22:01

Finalement j'ai retenté de traduire en m'apercevant que la traduction en PHP que tu m'as donnée ne correspond pas à celle que j'avais eue grâce à ASP2PHP.

Je suis arrivée à ceci, pour le code ci-dessus:
<? //dim $fs, $a;
	//dim $tabb1[20],$tabb2[20],$tabb3[20],$tabb4[20],$tabb5[20];
	const $ForReading = 1, $ForWriting = 2, $ForAppending = 3;
	const TristateUseDefault = -2, $TristateTrue = -1, $TristateFalse = 0   ?>
<form action="validation.php#suite" method="POST">
<? include "confirm.php"; ?>
<? include "loadprix.php"; ?>
<b><li>Récapitulatif de votre commande:<br></b>
<? include "rappel.php"; ?>
<center>
<? include "facture.php"; ?>
</center>
<? if (request("type_parution")=="num" || request("type_parution")=="abonn") {?>
<input type="hidden" name="LNom_required" value="Vous devez entrer votre nom de livraison">
<input type="hidden" name="LAdresse_required" value="Vous devez entrer votre adresse de livraison">
<input type="hidden" name="LVille_required" value="vous devez entrer votre ville de livraison">
<input type="hidden" name="LCodepostal_required" value="vous devez entrer le code postal de votre ville de livraison">
<b><li>S'il vous plaît votre adresse de livraison :</b>
<font size="-1">(les champs marqués d'un (</font><font color="#FF0000" size="-1">*</font><font size="-1">) doivent obligatoirement être renseignés)</font><br>
<br><center>
<? include "livraison.php"; ?>
</center>
<?php } ?>
<b><li>S'il vous plaît votre adresse de facturation:<br></b>
<center>
<? if (request("type_parution")=="num" || request("type_parution")=="abonn") {?>
<input type="Checkbox" name="idem" value="True">Même adresse que la livraison<? } else { ?>
<input type="hidden" name="nom_required" value="Vous devez entrer votre nom">
<input type="hidden" name="adresse_required" value="Vous devez entrer votre adresse">
<input type="hidden" name="ville_required" value="vous devez entrer votre ville">
<input type="hidden" name="codepostal_required" value="vous devez entrer le code postal de votre ville">
<? } ?>
Du coup, ça me donne ça:

Parse error: parse error, unexpected T_CONST in /home/site/commande.php on line 35

par Elo478 » 05 juil. 2006, 18:18

Merci goeb!

En fait j'avais déjà tout converti de cette même manière, mais le script, une fois en PHP, ne marchait pas pour autant. J'imagine que le PHP utilise des méthodes différentes.

par goeb » 05 juil. 2006, 17:39

salut,

ce que tu demandes est possible.
je commence, pour te montrer.
<% if request("type_parution")="num" or request("type_parution")="abonn" then %>
en PHP :
<?php
  if (request("type_parution")=="num" || request("type_parution")=="abonn") {?>
<% end if %>
=>
<?php } ?>
etc.etc...

Formulaire de commande en PHP

par Elo478 » 05 juil. 2006, 16:44

Bonjour, j'ai actuellement un site sous Windows, avec des formulaires et bons de commande en ASP. Comme j'ai refait mon site en PHP, je souhaite que les formulaires suivent, donc j'ai essayé de convertir l'ASP en PHP mais sans succès. Je recherche donc un moyen, soit de convertir tout le script ASP en PHP, soit de trouver une solution equivalente en PHP, qui aurait les mêmes fonctions, c'est-à-dire:
-calculer le total en fonction des quantités, de la TVA et des frais de ports selon la zone
-afficher le détail de la facture
-permettre le renseignement sécurisé des coordonnées bancaires à la fin de la commande
-permettre l'envoi du bon de commande vers ma boite mail pour que je puisse ensuite effectuer manuellement la transaction et la confirmer à mon client


Voici comme exemple le code ASP de la première page de mon script:
<% Dim fs, a
	dim tabb1(20),tabb2(20),tabb3(20),tabb4(20),tabb5(20)
	Const ForReading = 1, ForWriting = 2, ForAppending = 3
	Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0   %>
<form action="validation.asp#suite" method="POST">
<!--#include file="confirm.asp" -->
<!--#include file="loadprix.asp" -->
<b><li>Récapitulatif de votre commande:<br></b>
<!--#include file="asp/rappel.asp" -->
<center>
<!--#include file="facture.asp" -->
</center>
<% if request("type_parution")="num" or request("type_parution")="abonn" then %>
<input type="hidden" name="LNom_required" value="Vous devez entrer votre nom de livraison">
<input type="hidden" name="LAdresse_required" value="Vous devez entrer votre adresse de livraison">
<input type="hidden" name="LVille_required" value="vous devez entrer votre ville de livraison">
<input type="hidden" name="LCodepostal_required" value="vous devez entrer le code postal de votre ville de livraison">
<b><li>S'il vous plaît votre adresse de livraison :</b>
<font size="-1">(les champs marqués d'un * doivent obligatoirement être renseignés)</font><br>
<br><center>
<!--#include file="livraison.asp" -->
</center>
<% end if %>
<b><li>S'il vous plaît votre adresse de facturation:<br></b>
<center>
<% if request("type_parution")="num" or request("type_parution")="abonn" then %>
<input type="Checkbox" name="idem" value="True">Même adresse que la livraison<% else %>
<input type="hidden" name="nom_required" value="Vous devez entrer votre nom">
<input type="hidden" name="adresse_required" value="Vous devez entrer votre adresse">
<input type="hidden" name="ville_required" value="vous devez entrer votre ville">
<input type="hidden" name="codepostal_required" value="vous devez entrer le code postal de votre ville">
<% end if %>
Si quelqu'un pouvait me dire si ce que je demande est possible ou si je dois chercher autre chose s'il vous plaît? Je cherche à faire ceci depuis deux mois et je tourne en rond car je n'y connais rien!

Merci