2016-11-14 4 views
0

私はCVの表を持つデータベースを持っています。クライアントは(名前、姓、専門的な経験など...) htmlページ私は3つのdivを持っています。 1つのdivから別のdivに完全な行を表示する方法

第一事業部

は、私はそれを分離し、実際のCVまたはおそらく、仕事の申し込みフォームとして、それを表示するには、各ラインの下に <br>を用いて分離エコー $row=nameを使用して計画しています全体CVフォームが表示されます。

第二事業部しか登録CV's の名前のリストが含まれていますし、私はjQueryのか、JSについて少し知っているので、私はクリックされたとき、それが$userform変数を比較するようにボタンが、それぞれの名前を怒鳴る使用しましたテーブル上に同じ名前の行があり、各行を<br>または<p>で区切って1番目のdivに全体の行を表示します。

iが変数 $userformが(私の言語で名前を意味する)、行名とグローバル変数に等しい宣言 mysqli_fetch_assoc
<div class="content2"> 
    <h3>LISTA DE CANDIDATOS:</h3> 
    <form class="btn" method="post"> 
    <input type="submit" name="btn_search" value="Actualizar"> 
    </form> 
    <br> 
<?php if (isset($_POST["btn_search"])) { 
    $con = mysqli_connect("localhost","root","","chevron"); 
    $q = "SELECT * FROM candidatos ORDER BY id DESC"; 
    $result = mysqli_query($con,$q); 
    while ($row = mysqli_fetch_assoc($result)){ 
     $userform = $row["nome"] ; 
     $_SESSION["userform"] = $userform; 
     echo " ".$row['sobrenome'].", ".$_SESSION['userform']." <br><br>"; ?> 
     <form class="btn" action="" method="post"> 
      <input type="submit" name="post_form" value="Vizualizar CV"> 
     </form> 
     <br> 
<?php } 
} 
?> 
</div> 

$_SESSION['userform']です:

まずそれが第二のdivのリストを更新します行名を含む変数$userformに等しい。それがセッション変数に1に等しい名前を見つけて、全体を表示する必要がありますセッション変数である$userform変数に基づいて

<div class="content"> 
    <br> 

    <div class="form_cand"> 
    <br> 
    <?php if (isset($_POST["post_form"])) { 


     $con = mysqli_connect("localhost","root","","chevron"); 
     $q = "SELECT * FROM candidatos WHERE nome = ".$_SESSION["userform"]." "; 

     $result = mysqli_query($con, $q); 
     if (!$result) { 
     echo "ERROR"; 
     } 
     $row = mysqli_fetch_array($result); 
     echo "NOME: ".$row["nome"]."<br>"; 
     echo "SOBRENOME: ".$row["sobrenome"]."<br>"; 
     echo "MORADA: ".$row["morada"]."<br>"; 
     echo "BI: ".$row["bi"]."<br>"; 
     echo "EMAIL: ".$row["email"]."<br>"; 
     echo "COMPETENCIAS: ".$row["competencias"]."<br>"; 
     echo "IDIOMAS: ".$row["idiomas"]."<br>"; 
     echo "OBJECTIVO: ".$row["objectivo"]."<br>"; 
    } 
    ?> 
    </div> 
</div> 

:今

第一のdiv私はなぜそれが表示されていないのか分からないのですか?

助けてください!

UPDATE:

私は第一の部分の作業を持って助けてくれてありがとう!今私は2つのボタンと、データがボタンとチェックボックスが表示されているときのためのwhile条件にチェックボックスを追加しました、一つはボタンが拒否され、他のACCEPTです。

私が拒否をクリックすると、そのテーブルから現在の投稿情報を削除し、それを別のテーブルに送るなどしたいと思います。 「DeniedCV's」とすることができ、受け入れボタンは実際に同じことをするが、それを「ACCEPTEDCV's」テーブルに送ることができる。

しかし、[ACCEPT]ボタンをクリックしてチェックボックスをオンにした場合、同じことをしたいのですが、今回は2つの他のテーブルにデータを送信します。ここ

はi'veがこれまで行って何です:あなたの中のサイクルで

 <div class="content"> 


<br> 
<?php if (isset($_POST["post_form"])) { 
    $selectedUser = intval($_POST['users']); //pra selecionar o nome clicado na option list 

    if($selectedUser > 0){ 
     $con = mysqli_connect("localhost","root","","chevron"); 
     $q = "SELECT * FROM candidatos WHERE id = ".$selectedUser." "; 
      $result = mysqli_query($con, $q); 
        if (!$result) { 
        echo "ERROR"; 
         } 

       $row = mysqli_fetch_array($result); 

        if(is_array($row) && count($row) > 0){ 
        echo "<center><strong>CANDIDATO Nº.:</strong>".$row["id"]." <br><br><br></center>"; 
         echo "<strong>NOME:</strong><br>".$row["nome"]."<br><br><br>"; 
        echo "<strong>SOBRENOME:</strong><br> ".$row["sobrenome"]."<br><br><br>"; 
             echo "<strong>MORADA:</strong><br> ".$row["morada"]."<br><br><br>"; 
             echo "<strong>BI:</strong><br> ".$row["bi"]."<br><br><br>"; 
             echo "<strong>EMAIL:</strong><br> ".$row["email"]."<br><br><br>"; 
             echo "<strong>COMPETENCIAS:</strong><br> ".$row["competencias"]."<br><br><br>"; 
             echo "<strong>IDIOMAS: </strong><br>".$row["idiomas"]."<br><br><br>"; 
             echo "<strong>OBJECTIVO:</strong><br> ".$row["objectivo"]."<br>"; ?> 

             <center> 
             <form class="decisions" action="" method="post"> 

             <p> 
             Se achar esta candidatura excepcional e quiser mostra-la ao ADMINISTRADOR marque a caixinha pequena que esta apos o botão qualificado! 
             </p> 
             <input type="submit" name="btn_deny" value="NÃO QUALIFICADO"> 

             <!-- botao negar --> 
             <?php if (isset($_POST['btn_negar'])) { 

               $selectedUser = intval($_POST['users']); 

               if($selectedUser > 0){ 
                $con = mysqli_connect("localhost","root","","chevron"); 
                $q = "SELECT * FROM candidatos WHERE id = ".$selectedUser." "; 

                $result = mysqli_query($con, $q); 

                if (!$result) { 
                 echo "ERROR"; 
                } 

                $row = mysqli_fetch_array($result); 

                if(is_array($row) && count($row) > 0){ 
                 //I WANTED TO PUT ANOTHER $q = wich inserts Into another table 
                 //and then add another $q = wich deletes it from the current table 




             } ?> 
             <!-- botao negar --> 
             <input type="submit" name="btn_aceitar" value="QUALIFICADO"> 
             <!-- botao aceitar --> 
             <?php if (isset($_POST['btn_accept'])) { 

             } ?> 
             <!-- botao aceitar --> 
             <input type="checkbox" name="checkbox_recomend" value="Recomendar ao Administrador"> 
             </form> 
             </center> 
             <?php } 
              } 

             } 
             ?> 

答えて

0

あなたがCです複数のフォームを同じボタン名で入力し、入力がない場合は、情報を印刷してください。

それを行うための正しい方法は、リストのいくつかの種類(例えば選択し、ドロップダウン)を使用すると、選択したユーザーに基づいて、正しい情報を表示することです: HTMLは次のようになります。

<form class="btn" action="" method="post"> 
    <select name="users"> 
     <?php while ($row = mysqli_fetch_assoc($result)){ ?> 

      <option value="<?php echo $row['id'] ?>"> 
       <?php echo ' '.htmlspecialchars($row['sobrenome']).', '.htmlspecialchars($row['nome']) ?> 
      </option> 

     <?php } ?> 
    </select>  

    <input type="submit" name="post_form" value="Vizualizar CV" /> 

そして提出後 :

<?php 

if (isset($_POST["post_form"])) { 

    $selectedUser = intval($_POST['users']); // This is how we extract the chosen item from the drop-down 


    if($selectedUser > 0){ 
     $con = mysqli_connect("localhost","root","","chevron"); 
     $q = "SELECT * FROM candidatos WHERE id = ".$selectedUser." "; 

     $result = mysqli_query($con, $q); 

     if (!$result) { 
      echo "ERROR"; 
     } 

     $row = mysqli_fetch_array($result); 

     if(is_array($row) && count($row) > 0){ 
      echo "NOME: ".$row["nome"]."<br>"; 
      echo "SOBRENOME: ".$row["sobrenome"]."<br>"; 
      echo "MORADA: ".$row["morada"]."<br>"; 
      echo "BI: ".$row["bi"]."<br>"; 
      echo "EMAIL: ".$row["email"]."<br>"; 
      echo "COMPETENCIAS: ".$row["competencias"]."<br>"; 
      echo "IDIOMAS: ".$row["idiomas"]."<br>"; 
      echo "OBJECTIVO: ".$row["objectivo"]."<br>"; 
     } 
    } 
} 

?> 

あなたは$ _SESSIONスーパーグローバルに情報を格納する必要はありません。フォームを通じてデータを送信するときは、文字列ではなくIDを使用することをお勧めします。オプション値に名前を使用する代わりに、idを使用しました。

あなたが生きて同じことを達成したい場合は、リフレッシュせず、その後、あなたはAJAX

編集を使用するべきである:あなたがサンプルのAJAXコードを要求されたのでを、最初にこのanswerをご覧下さい。

必要に応じていくつか変更する必要があります。

<script> 
     $('input[name="post_form"]').on('click',function(){ 
      var chosenID = $('select[name="users"]').val(); 

      if(chosenID > 0){ 
       $.ajax({ 
        url: 'yourfile.php?ID = ' + chosenID, 
        type: 'GET', 
        dataType: 'html', 
        success: function (data) { 
         $('#userData').html(data); 
        } 
       }); 
      } 
     }); 
    </script> 

あなたはまた、div要素を追加する必要があります:まず、次のJavaScriptコードを追加し

あなたが今しなければならないすべては$の下にある yourfile.phpファイルにIDを取得することです
<div id="userData"></div> 

_GET superglobalを実行し、以前に投稿したPHPコードを繰り返します。

+0

ありがとうございました! AJAXをリアルタイムで使用する場合は複雑ですか?私はコードを意味する?私は早く学ぶので、私は基本とそれがどのように完了したかを理解することができます。plzは私にteのステップを表示します –

+0

私は答えを編集し、AJAXサンプルも追加しました。 –

+0

ありがとうございます、しかし私はyourfile.phpの部分を理解していません、私はそこに何を追加すればいいのですか? –

関連する問題