2016-10-27 22 views
-3

私はPHPで提供するウェブサイトを作ろうとしています。 forループで使用する関数があり、データベースの結果が関数に渡されます。コードは次のようである:フォームが正しく機能していませんか?

<?php 
function table_values($row0,$row1,$row2,$row3,$row4,$row5){ 

    $table_element = "<div id=\"$row0\" class='tab'> 
            <div class='tab-header'>"; 
     switch ($row1) { 
      case "Tiscali": 
       $img = "<img src='images/tiscali.png' alt='Tiscali' />"; 
       break; 
      case "Infostrada": 
       $img = "<img src='images/infostrada.png' alt='Infostrada' />"; 
       break; 
      case "Fastweb": 
       $img = "<img src='images/fastweb.png' alt='Fastweb' />"; 
       break; 
      case "TIM": 
       $img = "<img src='images/telecom-italia.png' alt='TIM' />"; 
       break; 
     } 
     $table_element = "". 
      $table_element . " $img <span>$row2</span></div> 
           <div class='block'> 
            <div class='first-set-block'> 
             <span class='s2'>Download</span><br /><span class='s3'>$row3 Mbps</span> 
            </div> 
            <div class='first-set-block'> 
             <span class='s4'>ATTIVAZIONE</span><br /><span class='s5'>GRATUITA</span> 
            </div> 
           </div> 
           <div class='block'> 
            <div class='block-header'> 
             Costo standard 
            </div> 
            <div class='block-describe-standard'> 
             <span class='s6'>&#8364; $row4</span> 
            </div> 
           </div> 
           <div class='block'> 
            <div class='block-header'> 
             Promozione 
            </div> 
            <div class='block-describe-promozione'> 
             <span class='s7'>&#8364; $row5</span> 
            </div> 
           </div> 
           <div class='block'> 
            <div class='block-header-last'> 
             Costo 1 anno 
            </div> 
            <div class='block-describe-costo'> 
             <span class='desc1'>&#8364; 21</span> 
             <span class='desc2'>.32<br />&#8364;/mese</span> 
             <button class='ordina-offerta'>Ordina</button> 
            </div> 

           </div> 
           </div> 
           <div class='black'> 
            </div> 
           <div class='popup' id='pop".$row0."'> 
           <form method='post' action='off.php'> 
            <span class='close'>&times;</span> 


            <table width='100%' style='text-align: center;'> 
             <tr> 
              <td>Nome: </td><td><input type='text' name='nome' /></td> 
             </tr> 
             <tr> 
              <td>Cognome: </td><td><input type='text' name='cognome' /></td> 
             </tr> 
             <tr> 
              <td>id: </td><td><input type='text' name='id' value=\"$row0\" /></td> 
             </tr> 
             <tr> 
              <td colspan='2'><input type='submit' value='Carica' class='carica' /></td> 
             </tr> 
            </table> 
           </form> 
           </div>"; 

       return $table_element; 
      } 
?> 

が、1つの理由で、私はdivの黒とdivのポップアップがdivのクラスタブの子であるが、私はこれまで上記のことから、コードを変更したときにボタンが「doesnの提出することにしたいです仕事。

<?php 
function table_values($row0,$row1,$row2,$row3,$row4,$row5){ 

    $table_element = "<div id=\"$row0\" class='tab'> 
            <div class='tab-header'>"; 
     switch ($row1) { 
      case "Tiscali": 
       $img = "<img src='images/tiscali.png' alt='Tiscali' />"; 
       break; 
      case "Infostrada": 
       $img = "<img src='images/infostrada.png' alt='Infostrada' />"; 
       break; 
      case "Fastweb": 
       $img = "<img src='images/fastweb.png' alt='Fastweb' />"; 
       break; 
      case "TIM": 
       $img = "<img src='images/telecom-italia.png' alt='TIM' />"; 
       break; 
     } 
      $table_element = "". 
       $table_element . " $img <span>$row2</span></div> 
          <div class='block'> 
           <div class='first-set-block'> 
            <span class='s2'>Download</span><br /><span class='s3'>$row3 Mbps</span> 
           </div> 
           <div class='first-set-block'> 
            <span class='s4'>ATTIVAZIONE</span><br /><span class='s5'>GRATUITA</span> 
           </div> 
          </div> 
          <div class='block'> 
           <div class='block-header'> 
            Costo standard 
           </div> 
           <div class='block-describe-standard'> 
            <span class='s6'>&#8364; $row4</span> 
           </div> 
          </div> 
          <div class='block'> 
           <div class='block-header'> 
            Promozione 
           </div> 
           <div class='block-describe-promozione'> 
            <span class='s7'>&#8364; $row5</span> 
           </div> 
          </div> 
          <div class='block'> 
           <div class='block-header-last'> 
            Costo 1 anno 
           </div> 
           <div class='block-describe-costo'> 
            <span class='desc1'>&#8364; 21</span> 
            <span class='desc2'>.32<br />&#8364;/mese</span> 
            <button class='ordina-offerta'>Ordina</button> 
           </div> 

          </div> 

          <div class='black'> 
           </div> 
          <div class='popup' id='pop".$row0."'> 
          <form method='post' action='off.php'> 
           <span class='close'>&times;</span> 


           <table width='100%' style='text-align: center;'> 
            <tr> 
             <td>Nome: </td><td><input type='text' name='nome' /></td> 
            </tr> 
            <tr> 
             <td>Cognome: </td><td><input type='text' name='cognome' /></td> 
            </tr> 
            <tr> 
             <td>id: </td><td><input type='text' name='id' value=\"$row0\" /></td> 
            </tr> 
            <tr> 
             <td colspan='2'><input type='submit' value='Carica' class='carica' /></td> 
            </tr> 
           </table> 
          </form> 
          </div></div>"; 

       return $table_element; 
      } 
?> 

なぜ誰が知っていますか?私は彼らには、parent()関数を使用するjqueryの理由のためのタブクラスの子供にする必要があります..事前に感謝、私は明らかだったことを願っています。

+1

「私がはっきりしたことを願って」 - あなたは明確ではありませんでした。どのように私たちは知ることができます、あなたはdivの "タブ"クラスを使用する必要がありますか? – user4035

+0

私はちょっと新しく、コードが完全にはっきりしていないので、このjqueryコードのタブクラスの子にしたいのです – ManoS

+0

あなたの質問にJQueryコードが表示されません。ここに記載されているように、最小限の作業例を提供してください:http://stackoverflow.com/help/mcve – user4035

答えて

0

動的に(JSを使用して)スクラッチから作成されたフォームは、コードの上に表示されるように読み込まれた後にページに挿入されたため、正しく処理されません。その代わりに、HTMLコードを使用してフォームを作成した後、サーバー(PHPコード)からのデータに従ってJSを使用して要素を変更することができます。
これが役に立ちます。

+0

少しでも、実際には私はすべてのプロジェクトコードを表示することをお勧めしますアイデアの方法私はこのような種類の方法を選択している、私はこれは提供してすべてのオファーと価格のWebと言っているとdbに格納されているとき、私は動的にいくつかのdivタグと内部の値を取得するクライアントがオファーをクリックしたときにポップアップとして表示される黒い画面の非表示のダイアログウィンドウ。ポップアップには名前フィールドの姓とIDが表示されます実際に私はそれを隠すように考えていましたが、この名前と姓のクライアントがこのオファーを望んでいることを知っています。 – ManoS

+0

私は現在、あなたと同様のプロジェクトに取り組んでいます。%100の動的に生成されたコンテンツは巨大な間違いです。あなたができることは、HTMLコードでメインデザインを描画することです。 ' 'であり、JSONの場合はDBから来るデータが良いでしょう、そして、来るべきパラメータに従って、JQueryを使って要素のプロパティを変更することができます。 – MrMisery

+0

はい、私はあなたのポイントを参照してください、実際にはMySQLは、私は知らないJSONは、正直言って私は少しWeb開発の私はそれが1つまたは2つJSONやNode.jsや他の種類の方法や技術をウェブ開発で学ぶためのシュートを提供します – ManoS

0
これは、メインページに含めるjQueryの一部のウィッヒです

..

 

    
    $(document).ready(function(){ 
      $('.tab').click(function(){ 
      var id=$(this).attr('id'); 
       $('#black' + id).fadeIn(); 
       $('#pop' + id).fadeIn(); 
       return false; 
      }); 
      $('.close').click(function(){ 
      var id=$(this).parent().parent().parent().attr('id'); 
       $('#black' + id).fadeOut(); 
       $('#pop' + id).fadeOut(); 
       $('.grazie-popup').fadeOut(); 
       return false; 
      }); 
      $('.black').click(function(){ 
      var id=$(this).parent().attr('id'); 
       $('#black' + id).fadeOut(); 
       $('#pop' + id).fadeOut(); 
       $('.grazie-popup').fadeOut(); 
       return false; 
      }); 
      if ($('.grazie-popup').length) { 
       $('#black').delay(400).fadeIn(); 
       $('.grazie-popup').delay(600).fadeIn(); 
      } 
     }); 


そして、私は私が<のdivクラス=「黒」を作りたい時に前に説明したように問題がある>と< div class = "popup"> <の子div class = "tab">送信ボタンが機能しません。

関連する問題