Optimisation de code et caractère spéciaux
Tipx
-
Neliel Messages postés 7012 Statut Contributeur -
Neliel Messages postés 7012 Statut Contributeur -
Bonjour,
J'ai suivi un tuto PHP pour l'inscription dans une base de donnée et l'affichage de ces données sur une page web.
J'ai du l'adapter à ma sauce pour qu'il corresponde à mes besoins. Seulement ce code ne me parraît absolument pas propore, et je pense que de nombreuses lignes pourraient être raccourci.
Etant un grand débuant en PHP je n'y arrive pas sans aide, voici le code, pouvez vous m'indiquer ce qui pourrait etre amélioré ?
<?php
//connect a la db
include 'connexion.php';
//recup des valeurs du formulaire
$plat1=$_POST['Plat1'];
$date1=$_POST['Date1'];
$plat2=$_POST['Plat2'];
$date2=$_POST['Date2'];
$plat3=$_POST['Plat3'];
$date3=$_POST['Date3'];
$plat4=$_POST['Plat4'];
$date4=$_POST['Date4'];
$plat5=$_POST['Plat5'];
$plat6=$_POST['Plat6'];
$date5=$_POST['Date5'];
//insertion dans la bdd
$insert1="INSERT INTO f1(Plat, Date) VALUES ('$plat1','$date1');";
$insert2="INSERT INTO f2(Plat, Date) VALUES ('$plat2','$date2');";
$insert3="INSERT INTO f3(Plat, Date) VALUES ('$plat3','$date3');";
$insert4="INSERT INTO f4(Plat, Date) VALUES ('$plat4','$date4');";
$insert5="INSERT INTO f5(Plat, Plat2, Date) VALUES ('$plat5','$plat6','$date5');";
mysql_query($insert1) or die("Erreur dans l'inscription dans la base de données".mysql_error());
mysql_query($insert2) or die("Erreur dans l'inscription dans la base de données".mysql_error());
mysql_query($insert3) or die("Erreur dans l'inscription dans la base de données".mysql_error());
mysql_query($insert4) or die("Erreur dans l'inscription dans la base de données".mysql_error());
mysql_query($insert5) or die("Erreur dans l'inscription dans la base de données".mysql_error());
//affichage du contenu
echo "Les données sont envoyées. ";
echo '<p><a href="#">Retour à l accueil.</a></p>';
//fermeture de la connection
mysql_close($lien);
?>
De plus lorque j'insère des caractère de type ' ou ", des erreurs MySql surviennent, je comprend pourquoi mais n'arrive pas non plus à le corriger....
Merci d'avance!!
J'ai suivi un tuto PHP pour l'inscription dans une base de donnée et l'affichage de ces données sur une page web.
J'ai du l'adapter à ma sauce pour qu'il corresponde à mes besoins. Seulement ce code ne me parraît absolument pas propore, et je pense que de nombreuses lignes pourraient être raccourci.
Etant un grand débuant en PHP je n'y arrive pas sans aide, voici le code, pouvez vous m'indiquer ce qui pourrait etre amélioré ?
<?php
//connect a la db
include 'connexion.php';
//recup des valeurs du formulaire
$plat1=$_POST['Plat1'];
$date1=$_POST['Date1'];
$plat2=$_POST['Plat2'];
$date2=$_POST['Date2'];
$plat3=$_POST['Plat3'];
$date3=$_POST['Date3'];
$plat4=$_POST['Plat4'];
$date4=$_POST['Date4'];
$plat5=$_POST['Plat5'];
$plat6=$_POST['Plat6'];
$date5=$_POST['Date5'];
//insertion dans la bdd
$insert1="INSERT INTO f1(Plat, Date) VALUES ('$plat1','$date1');";
$insert2="INSERT INTO f2(Plat, Date) VALUES ('$plat2','$date2');";
$insert3="INSERT INTO f3(Plat, Date) VALUES ('$plat3','$date3');";
$insert4="INSERT INTO f4(Plat, Date) VALUES ('$plat4','$date4');";
$insert5="INSERT INTO f5(Plat, Plat2, Date) VALUES ('$plat5','$plat6','$date5');";
mysql_query($insert1) or die("Erreur dans l'inscription dans la base de données".mysql_error());
mysql_query($insert2) or die("Erreur dans l'inscription dans la base de données".mysql_error());
mysql_query($insert3) or die("Erreur dans l'inscription dans la base de données".mysql_error());
mysql_query($insert4) or die("Erreur dans l'inscription dans la base de données".mysql_error());
mysql_query($insert5) or die("Erreur dans l'inscription dans la base de données".mysql_error());
//affichage du contenu
echo "Les données sont envoyées. ";
echo '<p><a href="#">Retour à l accueil.</a></p>';
//fermeture de la connection
mysql_close($lien);
?>
De plus lorque j'insère des caractère de type ' ou ", des erreurs MySql surviennent, je comprend pourquoi mais n'arrive pas non plus à le corriger....
Merci d'avance!!
A voir également:
- Optimisation de code et caractère spéciaux
- Caractère spéciaux - Guide
- Caractere speciaux - Guide
- Optimisation pc - Accueil - Utilitaires
- Code ascii - Guide
- Caractere speciaux mac - Guide
2 réponses
Bonjour,
Ce code est propre... je vois pas trop comment tu pourrais l'amélioré.
Pour les caractères ' et ", c'est tout à fait normal, ce sont des caractère utilisé en PHP... il faut utiliser "/" suivi du caractère pour échapper le caractère et pouvoir s'en servir.
Il y a aussi une fonction... mais je ne me souviens plus de son nom qui permet d'utiliser ses caractères dans une chaîne... je vais jeter un oeil.
"Trotti Trotta, Monsieur P, y'a des anges qui veulent un bisou..."
Ce code est propre... je vois pas trop comment tu pourrais l'amélioré.
Pour les caractères ' et ", c'est tout à fait normal, ce sont des caractère utilisé en PHP... il faut utiliser "/" suivi du caractère pour échapper le caractère et pouvoir s'en servir.
Il y a aussi une fonction... mais je ne me souviens plus de son nom qui permet d'utiliser ses caractères dans une chaîne... je vais jeter un oeil.
"Trotti Trotta, Monsieur P, y'a des anges qui veulent un bisou..."
Neliel
Messages postés
7012
Statut
Contributeur
1 696
La fonction se nomme htmlentities()...
Ah merci mais j'ai trouvé pour les caractères spéciaux:
$insert1="INSERT INTO f1(Plat, Date) VALUES ('".mysql_real_escape_string($plat1)."','".mysql_real_escape_string($date1)."');";
Bon par contre si tu me dis que le code est bien je vais te croire mais je pensais qu'il était possible de le raccourcir.
$insert1="INSERT INTO f1(Plat, Date) VALUES ('".mysql_real_escape_string($plat1)."','".mysql_real_escape_string($date1)."');";
Bon par contre si tu me dis que le code est bien je vais te croire mais je pensais qu'il était possible de le raccourcir.