[RESOLU] fonction qui retourne une conjugaison

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 : [RESOLU] fonction qui retourne une conjugaison

Re: [RESOLU] fonction qui retourne une conjugaison

par finipe » 19 févr. 2017, 12:07

Il faudra penser à des exceptions, comme par exemple le verbe aller !

Re: fonction qui retourne une conjugaison

par knuckerbzh » 19 févr. 2017, 00:19

nice merci vraiment sa fonctionne mieux *-*

Re: fonction qui retourne une conjugaison

par Spols » 18 févr. 2017, 23:23

initialise ta variable $result en début de fonction et ajoute un point avant le égal chaque fois que tu rempli cette variable, ainsi tu concatènera les balises p et tu afficheras le tout

Re: fonction qui retourne une conjugaison

par knuckerbzh » 18 févr. 2017, 22:25

pas vraiment car du coup il me retourne cela : Image

alors que ce que je veux c'est pour tous ( je, tu , il, nous, vous, ils)

j'arrive a cela:

Code : Tout sélectionner

<html> <head> <Title> ma conjugaison </title> </head> <body> <form> <p>verbe en "er" choissis :<input name="verbes" type="text" /></p> <input type="submit" name="envoyer" value="envoyer"> </form> <?php $verbes = isset($_REQUEST['verbes']) ? $_REQUEST['verbes']:''; //on receptionne la variable if(empty($verbes)){ echo'Veuillez remplir le champs verbes'; } // Conjuge les verbes en -er function conjuguer ($verbes){ $contrainte1 = true; $contrainte2 = true; //Terminaisons er regulier $terminaisons = [ "Je" => "", "Tu" => "s", "Il" => "", "Nous" => "ons", "Vous" => "z", "Ils" => "nt" ]; //Terminaisons irreguliere cer $terminaisonsCER = [ "Je" => "ce", "Tu" => "ces", "Il" => "ce", "Nous" => "çons", "Vous" => "cez", "Ils" => "cent" ]; $verbes = strtolower($verbes); if (strlen($verbes) > 15 || preg_match('/\s/', $verbes)) { $contrainte1 = !$contrainte2; $result = '<p>Le verbe doit contenir un maximum de 15 charactères et aucun espace</p>'; } if (substr($verbes, -2) != "er") { $contrainte2 = !$contrainte2; $result = '<p>Le verbe doit finir en -er</p>'; } if ($contrainte1 && $contrainte2 && substr($verbes, -2) == "er") { if (substr($verbes, -3) == "cer") { $verbes = substr($verbes, 0, -3); foreach ($terminaisonsCER as $key => $terminaison) { $result = '<p>'.$key.' '.$verbes.$terminaison.'</p>'; } } else { $verbes = substr($verbes, 0, -1); foreach ($terminaisons as $key => $terminaison) { $result = $key.' '.$verbes.$terminaison; } } } return $result; }$result_conjugaison = conjuguer($verbes); // variable contenant le resultat de la fonction echo $result_conjugaison; ?> </body> </html>

Re: fonction qui retourne une conjugaison

par Spols » 18 févr. 2017, 22:21

un simple echo $result_conjugaison; devrait suffire

Re: fonction qui retourne une conjugaison

par knuckerbzh » 18 févr. 2017, 22:00

OMG oui cela fonctionne me reste les return et/ou les affichage car quand je met le verbes cela ne me renvoie pas la conjugaison !

merci beaucoup a toi :)

Re: fonction qui retourne une conjugaison

par or 1 » 18 févr. 2017, 21:56

$verbes = isset($_REQUEST['verbes']) ? $_REQUEST['verbes']:'';
au lieu de
$verbes = isset($REQUEST['verbes']) ? $_REQUEST['verbes']:'';

fonction qui retourne une conjugaison

par knuckerbzh » 18 févr. 2017, 21:16

Code : Tout sélectionner

<html> <head> <Title> ma conjugaison </title> </head> <body> <form> <p>verbe en "er" choissis :<input name="verbes" type="text" /></p> <input type="submit" name="envoyer" value="envoyer"> </form> <?php $verbes = isset($REQUEST['verbes']) ? $_REQUEST['verbes']:''; //on receptionne la variable if(empty($verbes)){ echo'Veuillez remplir le champs verbes'; } // Conjuge les verbes en -er function conjuguer ($verbes){ $contrainte1 = true; $contrainte2 = true; //Terminaisons er regulier $terminaisons = [ "Je" => "", "Tu" => "s", "Il" => "", "Nous" => "ons", "Vous" => "z", "Ils" => "nt" ]; //Terminaisons irreguliere cer $terminaisonsCER = [ "Je" => "ce", "Tu" => "ces", "Il" => "ce", "Nous" => "çons", "Vous" => "cez", "Ils" => "cent" ]; $verbes = strtolower($verbes); if (strlen($verbes) > 15 || preg_match('/\s/', $verbes)) { $contrainte1 = !$contrainte2; $result = '<p>Le verbe doit contenir un maximum de 15 charactères et aucun espace</p>'; } if (substr($verbes, -2) != "er") { $contrainte2 = !$contrainte2; $result = '<p>Le verbe doit finir en -er</p>'; } if ($contrainte1 && $contrainte2 && substr($verbes, -2) == "er") { if (substr($verbes, -3) == "cer") { $verbes = substr($verbes, 0, -3); foreach ($terminaisonsCER as $key => $terminaison) { $result = '<p>'.$key.' '.$verbe.$terminaison.'</p>'; } } else { $verbes = substr($verbe, 0, -1); foreach ($terminaisons as $key => $terminaison) { $result = $key.' '.$verbes.$terminaison; } } } return $result; }$result_conjugaison = conjuguer($verbes); // variable contenant le resultat de la fonction ?> </body> </html>
bonjour,
voila j'aimerais que cela me retourne la conjugaison du verbe que l'utilisateur auras choissis (un verbes qui finis en er) mais je n'arrive pas a faire ne sorte que le verbes choissis entre dans ma fonction ...

snifff help me please