Php , problème compréhension

Php , problème compréhension - PHP - Programmation

Marsh Posté le 29-05-2013 à 18:06:06    

Bonjour à tous et à toutes .  
 
Depuis peu , j'ai décidé de me mettre au langage PHP mais j'ai vraiment du mal .
Pour m'aider , un mais ma donner un bout de code que voici :
 
<?php  
 
 
 require "includes/config.php";  
 
 mysql_connect (DB_ADRESS,DB_USER,DB_PASS); // Variable //
 mysql_select_db(DB_DB);  // Connection a la BDD  //
 
 $sql="SELECT * FROM actualites ";
 $req= mysql_query ($sql) or die ; Pourquoi avoir mis sa ici ?  
 while ($data=mysql_fetch_assoc($req))

 {
  echo "<fieldset><center><h2>".$data["titre"]."</h2></center><br/>";
  echo "".$data["contenu"]."</fieldset>";
  echo "<center><a href=\"scr_com.php?id={$data["id"]}\">{$data["titre"]} <--commenter cet article</a></center></br>";  
 
 }
?>
 
J'ai compris le code mais quelque zone reste très sombre . toute les parties du code en Rouge sont les endroits que je ne comprend pas et pourquoi les as t-il mis ici ?  
 
Je fait donc appel a vos lumière car je suis vraiment bloqué ^^ . merci de votre aide .
 
Cordialement !.


Message édité par stylind le 29-05-2013 à 18:10:08
Reply

Marsh Posté le 29-05-2013 à 18:06:06   

Reply

Marsh Posté le 29-05-2013 à 18:09:02    

Bonjour, quelle est l'adresse du tuto que vous avez utilisé pour débuter ?


---------------
Main/Alt1/Alt2/Alt3
Reply

Marsh Posté le 29-05-2013 à 18:10:44    

Je ne regarde pas de tuto , un amis ma prêté ces feuilles de cour .

Reply

Marsh Posté le 29-05-2013 à 18:25:06    

Enseigner du php avec les fonctions mysql_ en 2013. Mais putain sérieusement quoi.
 
Bon sinon, pour être plus explicite :

Code :
  1. $req= mysql_query ($sql) or die ;


Envoie la requête SQL au serveur et retourne un handler ($req). En cas d'erreur, arrête le script.
L'opérateur "or" (ou ||) est feignant et s'arrête au premier opérande (mysql_query($sql)) s'il peut être évaluer à true sans évaluer le second opérande (die).
 

Code :
  1. while ($data=mysql_fetch_assoc($req))


Boucle sur les résultats de la requête.
 
As-tu déjà codé dans un langage autre que php ?


---------------
Main/Alt1/Alt2/Alt3
Reply

Marsh Posté le 30-05-2013 à 18:05:15    

Merci beaucoup pour tes réponses ! . Oui j'ai déjà codé en VBA , mais peu .

Reply

Marsh Posté le 30-05-2013 à 18:13:09    

Désolé pour le double post . Mais je viens de découvrir ceci :
 
extract($_POST);
 
A quoi sert-elle ? A extraire quoi ?  
 
Merci encore de votre aide !

Reply

Marsh Posté le 31-05-2013 à 10:36:15    

Bon alors une astuce en php : la doc officielle est complète et très utile.
 
http://php.net/manual/fr/function.extract.php
 
En gros, extract sert à créer des variables à partir du contenu de $_POST.
Cela permet d'utiliser $champ1 à la place de $_POST['champ1'] après l'utilisation d'extract.
 
Mais j'insiste, lorsque tu tombes sur une fonction php inconnue mieux vaut aller en lire la doc sur le site php.net. D'ailleurs il ne faut pas hésiter à parcourir la liste des fonctions utiles pour savoir ce qui est disponible.
Par exemple pour la gestion des tableaux, des chaînes de caractères ou les bases de données.


---------------
Main/Alt1/Alt2/Alt3
Reply

Marsh Posté le 31-05-2013 à 16:52:44    

Et surtout voir la documentation de PDO, car le mysql_** ... :o


---------------
"Coucou petit perruche, c'est moi l'élan derrière toi !"
Reply

Marsh Posté le 01-06-2013 à 12:57:34    

D'accord mais , il fuat avoir défini le contenu de $_POST avant donc je suppose que extract($_POST) récupère le contenu de ce POST çi :
 
form action="scr_addcom.php" method="POST"><br></br>
 
?

Reply

Marsh Posté le 01-06-2013 à 13:01:31    

Le $_POST te sert à extraire les données du formulaire dans scr_addcom.php.
 
<input type="text" name= "exemple"/>
 
dans scr_addcom.php si tu fais $_POST['exemple'] tu récupères la valeur de ton champ de saisie.
 
dans le cas de extract($_POST) ça va te créé une variable $exemple avec le contenue de ton champ de saisie dedans ;)


---------------
"Coucou petit perruche, c'est moi l'élan derrière toi !"
Reply

Marsh Posté le 01-06-2013 à 13:01:31   

Reply

Marsh Posté le 01-06-2013 à 13:12:11    

D'accord ! , maintenant j'ai tous compris ^^ . Merci beaucoup !

Reply

Marsh Posté le 01-06-2013 à 13:16:19    

Perso, je n'utiliserai pas extract($_POST) car se sont des données rentrées par l'utilisateur donc inconnues.
 
Si tu veux testé si $_POST['exemple'] existe un simple isset() fait l'affaire ;)
 
Et regarde PDO pour la base de données, beaucoup plus sécurisé. les fonction mysql_ sont dépassée.
 
Le extract vient aussi tu cours de ton pote ?


---------------
"Coucou petit perruche, c'est moi l'élan derrière toi !"
Reply

Marsh Posté le 01-06-2013 à 13:23:46    

Le formulaire , permet de poster un commentaire . Donc dans ce formulaire on ne peut pas savoir à l'avance ce que va écrire l'utilisateur donc extract($_POST) n'est-elle pas la fonction la plus adéquate ?  
 
Oui , tous viens de son cour , la plupart des choses sont expliqué mais quelque fois je ne comprend strictement rien à certaine fonction ou bout de code ^^ .  
 
Ps: désolé si mon vocabulaire est très restreint en informatique  --'.

Reply

Marsh Posté le 01-06-2013 à 13:43:34    

Voilà, pareil pour le S_GET qui extrait des paramètres de l'url.
 
Je serai toi je prendrai autres chose pour débuter, car au vu de ce que tu dis, ses cours ont un train de retard...
 
Regarde sur le site du zéro, le tuto sur le PHP est pas mal pour débuter ;)


---------------
"Coucou petit perruche, c'est moi l'élan derrière toi !"
Reply

Marsh Posté le 01-06-2013 à 16:41:32    

Ok , je vais y faire un tour . En tous cas merci de ton aide =) .

Reply

Marsh Posté le 01-06-2013 à 17:54:06    

Me re-voila encore une fois ^^ . N'ayant pas trouvé de reponse sur internet , je me retourne donc une nouvelle fois çà vous .  
 
Dans mon code j'ai ceci :  
 
mysql_connect (DB_ADRESS,DB_USER,DB_PASS);
 mysql_select_db(DB_DB);
 if (!empty($_POST)){   <-- qu'est ce que sa signifie ?  
  extract($_POST);  
 
Qu'est ce que le Empty signifie . En Anglais cela veut dire " Vide " mais je ne vois pas l’intérêt de le mettre pour ensuite mettre un Extract ...?
 
Merci une nouvelle fois de votre aide .

Reply

Marsh Posté le 01-06-2013 à 18:13:21    

Comme déjà précisé, la documentation PHP reste ta meilleure alliée dans l'apprentissage du PHP.
 
Ensuite tu noteras la structure conditionnelle if, qui accepte une exception booléenne (vrai/faux) comme paramètre. Ici dans ton cas !empty($_POST), donc empty (vide) sur la variable globale $_POST mais comme tu le vois il y a un point d'exclamation juste avant cette expression, qui signifie NOT, donc tu ne vas faire un extract seulement si $_POST n'est pas vide

Reply

Marsh Posté le 02-06-2013 à 03:00:09    

Citation :

if (!empty($_POST)){   <-- qu'est ce que sa signifie ?
extract($_POST);  


si $_POST n'est pas vide faire
extract($_POST);

 
(! = négation)
 
http://php.net/manual/fr/function.empty.php
http://www.siteduzero.com/informat [...] p-et-mysql (et tout un tas d'autres tutos plus avancés)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed