2017-08-08 25 views
0

今回は、すでに作成したhtmlテーブルに値を渡す際に問題があります。配列からhtmlテーブルに値を挿入する必要があります

これは、これまでの私のコードです:

<table id="FinalTable"> 
    <tr> 
     <td align="center">FECHA</td> 
     <th colspan="12" align="center">EVENTOS</th> 
    </tr> 
    <tr> 
     <th></th> 
     <td align="center">HORA INICIO</td> 
     <td align="center">SUMMARY</td> 
     <td align="center">DESCRIPTION</td> 
     <td align="center">LOCATION</td> 
     <td align="center">CREATED</td> 
     <td align="center">CREATOR_EMAIL</td> 
     <td align="center">STARTDATE</td> 
     <td align="center">START_DATE</td> 
     <td align="center">START_DATETIME</td> 
     <td align="center">START_TIMEZONE</td> 
     <td align="center">END_DATE</td> 
     <td align="center">END_DATETIME</td> 
     <td align="center">END_TIMEZONE</td> 
    </tr> 
    <tr> 
     <td align="center">(First date and so on)</td> 
     <td align="center">(Events detalized)</td> 
    </tr> 
</table> 
<br> 

<script type="text/javascript" language="javascript"> 
    document.write("<br><br><br>It's the end of the world as we know it!</br>  </br></br>"); 


    var ar = <?php echo json_encode($newarray) ?>; 
    for (var i = 0; i < ar.length; i++) { 
     for (var j = 0; j < ar[i]['Eventos'].length; j++) { 
      if(ar[i]['Eventos'][j].isArray !== 'undefined'){ 
       document.write(
         '<td><tr> ' + "fecha_inicio" + ' ' + ar[i]['Eventos'][j]['fecha_inicio'] + '</tr></td>' + 
         ' ' + "hora_inicio" + ' ' + ar[i]['Eventos'][j]['hora_inicio'] + 
         ' ' + "summary" + ' ' + ar[i]['Eventos'][j]['summary'] + 
         ' ' + "description" + ' ' + ar[i]['Eventos'][j]['description'] + 
         ' ' + "location" + ' ' + ar[i]['Eventos'][j]['location'] + 
         ' ' + "created" + ' ' + ar[i]['Eventos'][j]['created'] + 
         ' ' + "creator_email" + ' ' + ar[i]['Eventos'][j]['creator_email'] + 
         ' ' + "startdate" + ' ' + ar[i]['Eventos'][j]['startdate'] + 
         ' ' + "start_date" + ' ' + ar[i]['Eventos'][j]['start_date'] + 
         ' ' + "start_datetime" + ' ' + ar[i]['Eventos'][j]['start_datetime'] + 
         ' ' + "start_timezone" + ' ' + ar[i]['Eventos'][j]['start_timezone'] + 
         ' ' + "end_date" + ' ' + ar[i]['Eventos'][j]['end_date'] + 
         ' ' + "end_datetime" + ' ' + ar[i]['Eventos'][j]['end_datetime'] + 
         ' ' + "end_timezone" + ' ' + ar[i]['Eventos'][j]['end_timezone']) 
      } 
     } 
    } 

だから、基本的に、私はテーブルのデ分野へdocument.write後に来るすべての値を挿入する方法がわかりません。

誰かに助けてもらえますか?

ありがとう、大好きなスタッカーです!

+1

これはどのようにPHPに関連していますか? – Qirel

+0

Javascriptではなく、PHPで表に記入してみませんか? – Barmar

+0

分かりやすいコードの字下げが良い考えです。 このコードを読むと、コードをデバッグするのに役立ちます**。 このコードを数週間/数ヶ月で修正するように求められ、最終的に私に感謝します。 – GrumpyCrouton

答えて

1

表の行は</table>より前である必要があります。 <td><tr>の内部にある必要がありますが、それ以外の方法で使用することができます。あなたの価値の多くは<td>にはありません。

PHPですべてを行うだけです。

<table id="FinalTable"> 
    <tr> 
     <td align="center">FECHA</td> 
     <th colspan="12" align="center">EVENTOS</th> 
    </tr> 
    <tr> 
     <th></th> 
     <td align="center">HORA INICIO</td> 
     <td align="center">SUMMARY</td> 
     <td align="center">DESCRIPTION</td> 
     <td align="center">LOCATION</td> 
     <td align="center">CREATED</td> 
     <td align="center">CREATOR_EMAIL</td> 
     <td align="center">STARTDATE</td> 
     <td align="center">START_DATE</td> 
     <td align="center">START_DATETIME</td> 
     <td align="center">START_TIMEZONE</td> 
     <td align="center">END_DATE</td> 
     <td align="center">END_DATETIME</td> 
     <td align="center">END_TIMEZONE</td> 
    </tr> 
    <tr> 
     <td align="center">(First date and so on)</td> 
     <td align="center">(Events detalized)</td> 
    </tr> 
<?php 
foreach ($newarray as $el) { 
    foreach ($el['Eventos'] as $event) { 
     if (is_array($event)) { 
      echo "<tr>"; 
      echo "<td>{$event['fecha_inicio']}</td>"; 
      echo "<td>{$event['hora_inicio']}</td>"; 
      // repeat for all fields in $event 
      echo "</tr>"; 
     } 
    } 
} 
?> 
</table> 
+0

うわー!!!!ありがとう、たくさんの仲間!あなたはそれをとてもシンプルにしました、私は自分のコードで複雑になっていました! よろしくお願いいたします。 –

関連する問題