2012-02-09 7 views
0

私は現在ウェブページを作っているが、エコーがdivコンテナの中にあるといういくつかの問題を抱えている。エコーはdivの中に表示されていないが、その外で働いた

私のウェブサイトは現在次のように設定されています。 index.phpの左側にヘッダーとナビゲーションペインがあります。クリックされた内容に応じて異なるページに読み込まれるbodycontent divがあります。 私は以前に私のBodyContent divの前に私のindex.php右に次のコードを持っていた:

<?php 
//set the variables 
$username = isset($_POST['username']) ? $_POST['username'] : ''; 
$email  = isset($_POST['email']) ? $_POST['email'] : ''; 
$password = isset($_POST['password']) ? $_POST['password'] : ''; 
$step  = isset($_POST['step']) ? $_POST['step'] : '1'; 

//validation   
if($step=='2'){ 
    if($username == '' || strlen($username)==0){ 
     echo 'username can not be blank<br/>'; 
    } 
    if(filter_var($email, FILTER_VALIDATE_EMAIL) == false){  
     $errors[] = 'invalid email address<br/>'; 
    }  
    if($password == '' || strlen($password)<=4){ 
     $errors[] = 'password can not be blank or less than 4 characters<br/>'; 
    } 
    $username=mysql_real_escape_string(trim($username)); 
    $email=mysql_real_escape_string(trim($email)); 
    $password=md5(mysql_real_escape_string(trim($password))); 
    //mysql queries 
    if(empty($errors)){ 
     //do something  
     $query = " 
      INSERT INTO user 
      (email, username, password, user_level) 
      VALUES 
      ('$email', '$username', '$password', '1')"; 
     $result = mysql_query($query) or die ('error: '. mysql_error()); 
     echo 'new user registered!'; 
     $step='2'; 
    } 
    else{  
     //error output 
     foreach($errors as $errors) 
     echo $errors; 
     $step='1'; 
    } 

} 
if($step=='1'){ 
?> 

私はindex.phpのが私のためにきれいに見えるように、私のregistration.phpページにコードのこの部分を移動することを決めました。 しかし、コードをindex.phpからregistration.phpに移動して以来、エコーは表示されません。あなたがもっとコードを必要とするなら、私はもっと喜んで投稿します。私は今、圧倒したくありません。

+0

divはどこですか? – elclanrs

+0

HTML divのフルコードを投稿し、エコーにアクセスする方法 –

+0

もっとコードが埋め込まれているので、あなたが望む答えを得ることができるように完全なコードを投稿してください。 –

答えて

3

私は最終的なforeachループに気づい:

foreach($errors as $errors)は、開口部ブラケットが不足しています。

foreach($errors as $error) { 
// instructions 
} 
+0

まさに私が指摘したいことです。 –

+0

それはうまくいかなかった。 bodycontent divの中にあるsubmitボタンをクリックすると、ボタンのアクションは "index.php"になるということです。 index.phpの時、私のページは自動的にregister.phpをロードします。サブミットボタンが押された直後にエコーが消去されるのでしょうか? – Recur

+0

いいえ、括弧がなくてもかまいません(読みやすくするために括弧を付け加えることができますが、インデントも改善される可能性があります)。コードは 'foreach($ errors as $ errors){echo $ errors; } ' – Arjan

関連する問題