0

データベースからいくつかの情報を取得して、モーダルに入れようとしています。私は財団のウェブサイトに行き、彼らのドキュメントセクションからそれを理解しようとしました. 私はそれを正確に理解していません。そのため、ユーザーがアップロードした曲の削除を要求できるセクションがサイトにあります。X をクリックすると、モーダルがポップアップ表示され、確認を求められます。

    <div class="row">
      <div class="large-8 column musicup">
        <p> <?php echo "No music uploaded..."; ?> </p>
      </div>
    </div>
    <?php
        }else{
            ?>
    <h2 style="margin-top:1em;">Music uploaded</h2>
    <hr style="opacity:.4;">
    <?php
            while($row_a = mysql_fetch_array($res))
        { 
   ?>
    <div class="row">
      <div class="large-4 column musicup">
        <p><?php echo $row_a['title']; ?></p>
      </div>
      <div class="large-3 column musicup"><span data-tooltip class="has-tip tip-top" title="<?php echo $row_a['reason']; ?>">
        <div class="button <?php echo $row_a['status'];?>"><?php echo $row_a['status'];?></div>
        </span></div>
      <div class="large-3 column musicup_date">
        <p><?php echo date('F j Y',strtotime($row_a['uploaded'])); ?> </p>
      </div>
      <div class="large-2 column musicup">
        <p><a href="song_delete.php?id=<?php echo $row_a['song_id']; ?>" data-reveal-id="deleteMusic" data-reveal-ajax="true" style="font-weight:bold">X</a></p>
      </div>
    </div>
    <?php 
            }
        }
    } 
    ?>
    </div>

これで、song_delete.php という新しいページにモーダルとすべてのデータベース クエリが作成されました。

そのためのコードは次のとおりです。

<?php 
include_once "functions.php"; 

$query = sprintf("SELECT * FROM songs WHERE user_id = %d AND song_id = %d",$_SESSION['user_id'], $_GET['id']);
$res = mysql_query($query) or die('Error: '.mysql_error ());
$row_a = mysql_fetch_assoc($res);
$totalRows_a = mysql_num_rows($res);
?>
<div id="deleteMusic" class="reveal-modal medium">
<h2>Request to delete<span style="color:#F7D745;"> <?php echo $row_a['title']; ?></h2>
<p class="lead">Are you sure you want to delete this song? Please allow 2 full business weeks for deletion.</p>
<span style="float:right;"><a href="#" class="button close-reveal-modal cancelbtn">Cancel</a>    
<a href="#" class="button submitbtn">Submit</a>  </span>

<a class="close-reveal-modal">&#215;</a>
</div>

事前に助けてくれてありがとう。それは有り難いです。

mysql_query と、PDO または MySQLi と OOP の使用方法については教えないでください。これは知っていますが、現在、このサイトはすべてコーディングされていません..

4

1 に答える 1

0

まず最初に OK です。このような場合は、コンパイル ソース (HTML ソース コード) を確認することをお勧めします。あなたはこれができますか?あなたが与えたコードからは問題ないように見えますが、css/js がリンクされていて、公開コードの配置が表示されていないと、わかりません。


財団がどのように機能するかを明らかにする

1 - モーダル コードは末尾の直前に配置され</body>ます。

2 - 次のようになります。

<div id="myModal" class="reveal-modal">
  <h2>Awesome. I have it.</h2>
  <p class="lead">Your couch.  It is mine.</p>
  <p>Im a cool paragraph that lives inside of an even cooler modal. Wins</p>
  <a class="close-reveal-modal">&#215;</a>
</div>

3 - 必要なサイズに応じて、追加のクラスを使用できます.small(ブラウザー幅の 30% の表示サイズの場合。または、これらのいずれか (Foundation Docs から直接取得)

  • .medium : 幅を 40% に設定します。
  • .large : 幅を 60% に設定します。
  • .xlarge : 幅を 70% に設定します。
  • .expand : 幅を 95% に設定します。

4 - この時点でdata-reveal-id="<id of modal here>"、基礎を介してモーダルをアタッチまたは呼び出すことができます。この時点で、Foundation 4 をサポートするすべてのブラウザでモーダルがポップアップ表示されますただし、それを閉じるには JavaScript ファイルが必要です

5 - 必要なスクリプトがあることを確認します

<!-- If running version with default scripts -->
<script src="foundation.js"></script>
<script src="foundation.reveal.js"></script>    

$(document).foundation()6 - 次に、魔法の jQuery JavaScript ライブラリを呼び出して、意図したとおりに動作するはずです :-)。

エクストラ

  • このようにしたい場合は、エクストラ属性を追加して明らかにすることができます(すべての属性のリスト ):

    $(document).foundation('reveal',<options here>,<callback>)

最後に、これから ajax タグを削除することをお勧めします (非同期でコンテンツを呼び出しているわけではありません。サーバーを介して実行時にすべてコンパイルされます)。

于 2013-08-28T13:21:34.733 に答える