Je voudrais savoir si je pouvais optimiser mon code ?

<?php 
    if(isset($_POST['valider'])){
        $pseudo = $_POST['pseudo'];
        $pseudo1 = 'Ton pseudo est: '.$pseudo.'';
        $email = $_POST['email'];
        $email1 = 'Ton email est: '.$email.'';
    }
?>
<form name="tuto" method="post" action="">
    <p>Entre ton pseudo: <input type="text" name="pseudo" placeholder="Ton pseudo"></p>
    <p>Entre ton email: <input type="email" name="email" placeholder="Ton email"></p>
    <input type="submit" name="valider">    
</form>
<?php 
    echo "".$pseudo1."</br>";
    echo "".$email1."";
?>

3 réponses


Lramelot
Réponse acceptée

Tu pourrais en effet nettement le simplifier.

<form method="POST">
    <label for="username">Nom d'utilisateur</label> <input type="text" name="username" id="username" />
    <label for="mail">Adresse mail</label> <input type="email" id="mail" name="email" />
    <input type="submit" name="submit" />
</form>

<?php if(isset($_POST['submit'])): ?>
    Votre pseudo est <?= $_POST['username'] ?> et votre adresse email est <?= $_POST['email']; ?>
<?php endif; ?>

Après si on veut repartir de ton code, on pourrait simplement remplacer
$pseudo1 = 'Ton pseudo est: '.$pseudo.'';
par
$pseudo = 'Ton pseudo est: '.$_POST['pseudo'];

Pareil pour les echos, tu n'as pas besoin d'échaper les variables simples entre des doubles quotes, tu pourrais donc juste faire
<?php echo "$pseudo <br>"; ?>

Globalement, beaucoup de détails du langage que tu ne connais pas encore, mais ça viendra.

Bonjour: extract ?

http://php.net/manual/fr/function.extract.php

Et n'oublie pas d'être parano ^^

C'est pas un "détail du langage" de déclarer une variable pour rien. D'ailleurs, c'est pas si mal de concaténer des chaînes de caractères, mais à un moment, ça devient intéressent d'utiliser des outils de formatage, comme ce que permet PHP avec les doubles guillemets. Dans n'importe quel langage, une personne aurait pu reproduire ce code.

Dans le domaine, on appelle ça le refactoring, ou le réusinage du code. C'est peut-être normal que certaines solutions ne te viennent pas tout suite à l'esprit, mais je suis convaincu que tu as la possibilité de repasser sur ton code afin d'améliorer la lecture de ton code. Juste pour te donner un exemple, on pourrait se poser la question pourquoi tu as des variables avec des numéros ($pseudo1, $email1), ça serait sujet à interprétation par les autres programmeurs, donc possiblement à une explication différente de la tienne.