begin process at 2012 05 31 06:24:39
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Débutants

 > 

[PROB]Formulaire: transformer nom de champs en variable directement


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[PROB]Formulaire: transformer nom de champs en variable directement

jeudi 21 octobre 2004 à 14:45:40 | [PROB]Formulaire: transformer nom de champs en variable directement

fluR

Bonjour, j previens j suis un noob en php,

je suis les exercicss d'un livre pour apprendre les bases de php avant de m envoler moi meme ds mes propres codes sources...

Cependant, je cale sur un problème (resolu d une certaine maniere, mais qui n'est pas des plus pratique :) )

Je construit un formulaire relatant une bibliothèque: on entre le code isbn, le nom , l auteur et le prix du livre. Chaque champs porte un nom specifique.

Ds mon book php, leur code reprend directement le nom des champs en tant que variable sans specialement passé par un $_POST();

Voyez plutot:

ceci est mon formulaire:
<form action="add_book.php" method="post">
<table border=0>
<tr><td>ISBN</td><td><input type=text name=isbn maxlength=13 size=13><br></td></tr>
<tr><td>Author</td><td> <input type=text name=author maxlength=30 size=30><br></td></tr>
<tr><td>Title</td><td> <input type=text name=title maxlength=60 size=30><br></td></tr>
<tr><td>Price ¤</td><td><input type=text name=price maxlength=7 size=7><br></td></tr>
<tr><td colspan=2><input type="submit" value="Register"></td></tr>
</table>
</form>

PS: que je mette des quotes ou des guillemets ou meme rien du tout aux noms des propriétés (ex: name='title' ou name="title" ou name=title) , ca ne change rien au problème

Et voici le code de add_book.php d'apres le livre(même si un peu modifié par moi même:

<?

if (!$isbn || !$author || !$title || !$price)
{
echo "You have not entered all the required details.<br>"
."Please go back and try again.";
exit;
}

$isbn = addslashes($isbn);
$author = addslashes($author);
$title = addslashes($title);
$price = doubleval($price);

@ $db = mysql_pconnect("localhost", "root", "", "books");

if (!$db)
{
echo "Error: Could not connect to database. Please try again later.";
exit;
}

$query = "insert into books values ('".$isbn."', '".$author."', '".$title."', '".$price."')";
$result = mysql_db_query("books",$query);
if ($result)
echo mysql_affected_rows()." book inserted into database.";
?>

Si j utilise ce code il me met une erreur de ce type : NOTICE: Undefined variable: isbn in c:\laurent\easyphp1-7\www\bookorama\add_book.php on line 10

Par contre ca marche si je met
$isbn = $_POST['isbn'];
$author = $_POST['author'];
$title = $_POST['title'];
$price = $_POST['price'];
au debut de mon code
Puiske ds ce cas il reprend bien les valeur des champs d apres leur nom.

Mais ma question est là: comment transformer les valeurs en variable a partir de leur nom de champs sans passer par un $_POST[];????

Dois je configurer mon fichier PHP.ini? si ui comment?
Changer la cfg d'Apache?

Ne me dites pas que c pas possible, puiske le codeur du livre y arrive bien(j vois mal l interet de montrer des sources ki marchent pas aux lecteurs). Version 4 de php.

J'oubliais de dire ke je test mes codes sur EASY PHP 1.7 => version 4 de php lui aussi.


___________________
Just me! Not another...
jeudi 21 octobre 2004 à 19:54:19 | Re : [PROB]Formulaire: transformer nom de champs en variable directement

lotr

Bonsoir,

ton bouquin travaille avec les variables globales à ON dans le php.ini
Or, sur easyphp 1.7, les variables globales sont à OFF par défaut (ce qui est beaucoup mieux du point de vue de la sécurité).
Pour t'en convaincre, voici un petit article.
Donc, deux solutions :
- tu passes register_globals à ON dans php.ini (c'est mal !!)
- tu rajoute les $_POST[], $_GET[] et autres ... tu trouveras des exemples commentés ici.

Bonne lecture ;)


Cette discussion est classée dans : php, title, champs, post, isbn


Répondre à ce message

Sujets en rapport avec ce message

Formulaire : Nom de champs directement transformé en variable [ par fluR ] Bonjour, j previens j suis un noob en php,je suis les exercicss d'un livre pour apprendre les bases de php avant de m envoler moi meme ds mes propres Concerver des $_POST apres erreur [ par jantonazzo ] Bonjour à tous.J'ai un petit probleme pour concerver les champs envoyé si une erreur s'est produite.En gros j'ai un formulaire à 7 champs, si les 7 ch comment modifier des champs en php [ par medhacen ] slt ts,je suis debutant en php, je veux modifier quelques champs ds une table de ma base. mais je n'arrive pa à realiser cette tâche.malgré le  code n php "automatique" d'un formulaire [ par maxhazard ] Bonjour à tousJe suis débutant sur php et je bloque sur un point qui vous paraitra peut être facile(enfin je pense).Je cherche à récolter les réponses PHP, formulaire et innerHTML [ par ExeQTd ] Bonjour à tous,Je suis actuellement confronté à un petit souci technique. Autant le dire tout de suite, je suis débutant dans le monde du web 2.0 et j problème opendir [ par tom099 ] Bonjour à tous!j'ai déjà posé  cette question dans la partie flash, mais celà relève plus du phpje fais communiquer flash et php par le biais d'un sen récupérer les chemin des deux photos [ par suethi75 ] Bonsoir tout le monde, Je souhaite récupérer le chemin des 2 photos mais je ne vois pas le problème, voici mon message d'erreur: Notice: Undefined ind Mise à jours de champs mysql 1+0,1 depuis requête php [ par stella2809 ] Bonjourvoici ma question :Je souhaiterais mettre à jours un champs de table MySql valeure actuelle + 0,1 et je bug :)champs mysql : <td al Probleme pour récupérer img src dans un post php [ par oeann ] Bonjour,J'ai un problème avec mon code.. J'ai essayé pas mal de solution mais sans résultat concret..J'ai un formulaire que j'envoie par post afin d'e liste deroulante en php [ par sihammaster ] bonjour a tous les membres et a tous les visiteurs.je suis debutante en php et j'ai vraiment besoin de votre aide.je travail sur un site en php.le pro


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,732 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales