2017-02-15 4 views
0

Par défaut, un mysqli_error affiche la première chose au-dessus de la page. J'essaye de comprendre comment je peux écho des erreurs partout où je veux sur une page.Comment afficher les messages d'erreur PHP partout où je veux sur une page HTML?

signup.php

if(isset($_POST['register'])){ 


    $username = $db->real_escape_string(trim(strip_tags($_POST['username']))); 
    $checkrow = mysqli_query($db, "SELECT * FROM users WHERE username='".$username."'"); 

    if(mysqli_num_rows($checkrow) > 0){ 


     echo '<divclass="alert alert-danger">Username already exists. Please choose a different one</div>'; 

    }else{ 
//do some 
}} 


<html> 
<body> 
<div class="error_message"> Display error message here instead </div> 
<form> Please sign up</form> 
</body> 
</html> 
+1

Mettre la message d'erreur dans une variable, et l'écho où vous voulez. – miken32

+1

Ah bien sûr bien merci quand même. –

Répondre

-1

Quelque chose comme ceci: -

<?php 
$error = '';//empty variable 
if(isset($_POST['register'])){ 
    $username = $db->real_escape_string(trim(strip_tags($_POST['username']))); 
    $checkrow = mysqli_query($db, "SELECT * FROM users WHERE username='".$username."'"); 

    if(mysqli_num_rows($checkrow) > 0){ 
     $error = 'Username already exists. Please choose a different one'; // assign error 
    }else{ 
     //do some 
    } 
} 
?> 

<html> 
<body> 
<?php if(!empty($error)){?> 
    <div class="error_message"><?php echo $error; // echo errors?></div> 
<?php } ?> 
<form> Please sign up</form> 
</body> 
</html> 

Note: - essayez de lire prepared statements et les utiliser pour empêcher de SQL Injection .REMERCIE

+0

pourquoi -ve marqué? n'importe quelle raison? –