2013-05-22 11 views
7

内では動作しません。私は別のファイルに書かれているこのfind_all()関数を持っていますforeachループ:

<?php require_once("../../includes/initialize.php"); ?> 
<?php if (!$session->is_logged_in()) { redirect_to("login.php"); } ?> 
<?php 
    $parents = UserParent::find_all(); 
?> 

これは、foreachループです:

<?php foreach($parents as $parent): ?> 
     <div class='popup-screen' id = "popup"> 
      <div class = "spacing"> 
      Do you want to delete this data? 
      </div> 
      <a href="list_users.php?parentNum=<?php echo $parent->parentNum; ?>"> <input type="button" value="YES" class = "popup-button"> </a> 
      <input type="button" value="CANCEL" class = "popup-button" onClick = "hide();"> 
     </div> 
     <tr class = "tr-1"> 
      <td onClick = "document.location = 'viewParent.php?parentNum=<?php echo $parent->parentNum; ?>';"><img src="../<?php echo $parent->image_path(); ?>" width="100" height = "100" class = "profile-pic"/></td> 
      <td onClick = "document.location = 'viewParent.php?parentNum=<?php echo $parent->parentNum; ?>';">Parent</td> 
      <td onClick = "document.location = 'viewParent.php?parentNum=<?php echo $parent->parentNum; ?>';"><?php echo $parent->username; ?></td> 
      <td onClick = "document.location = 'viewParent.php?parentNum=<?php echo $parent->parentNum; ?>';"><?php echo ucwords($parent->firstName); ?></td> 
      <td onClick = "document.location = 'viewParent.php?parentNum=<?php echo $parent->parentNum; ?>';"><?php echo ucwords($parent->lastName); ?></td> 
      <td onClick = "show();"><img src = "../stylesheets/images2/delete-icon.png" height="25" width="25" ></td> 
     </tr> 
<?php endforeach; ?> 

そしてこれはjavascriptのコードです:

基本的に、私のコードは、foreachループからデータを取得する情報の行を作成することです。 imgタグで示されているように、各行の最後には削除アイコンがあります。削除アイコンをクリックすると、show()関数が実行されます(show()関数は表示されないポップアップdivのみを表示します) - ユーザーがデータを削除したいかどうかを確認します。ユーザーがCANCELをクリックすると、javascriptコードで示すようにウィンドウが閉じます。ユーザがYESをクリックすると、SUPPOSEDがリンクに行きます:list_users.php?parentNum = parentNum; ?>($ parent-> parentNumの値は行ごとに異なります)。ただし、アンカータグALWAYSは、3行目であるかどうかにかかわらず、最初の行のリンクを取得します(途中で、他のtdタグのリンクが機能します)。さて、私の質問は、私は正しく、ポップアップdivの各行のYESボタンをリンクするのですか?

+0

どこにparentNumの値を宣言していますか? – NCoder

+1

'$ parents'に値を代入するコードを表示 –

+0

parentNumは親クラスの内部にあるので、宣言する必要はありません。それは私のデータベースからデータを取得します。ところで、tdのリンクが機能するので、parentNumは実際問題ではありません。 – YourMom

答えて

4

$ parent-の値> parentNum各行

で異なります。しかし、あなたのコードでは、それはありません。

<?php echo $parent->parentNum; ?> 

値がインクリメントされていませんか、変更されたか何かであるので、すべての行で同じです。


はまた、私は強くをいただきたいこのため<button>または<a>要素を使用することをお勧めします。それが彼らのために作られたものです。 <td>はクリックするつもりはありませんでした。良いデザインの習慣は(ほとんど)少し余計な努力の価値がある。

IMO、あなたのコードは、より多くの$nは、forループからである

... 
<td><a href='viewParent.php?n=<?php echo $n; ?>'></a></td> 
... 
<button name='show' value='1'>Show</button> 

...のようになります。その後、ページ上部の

if (isset($_POST['show'])) { ...logic... } 

あなたの 'show'イベントを受け取ることができます。

+0

私もそう思っていました。私はちょうどボタンを適切にリンクする方法を知らない。 – YourMom

+0

あなたは何を意味するのでしょうか? '

'要素を作り、その中にすべてを持っています。次に、ボタンをクリックすると、$ _POSTが入力された状態でページが送信されます(リロード)。 ''タグは自分自身を処理し、フォームの内部または外部にあることができます。 – Ben

+0

あなたの回答を編集する前にその投稿を作った。ちょうど私のコメントを無視してください。とにかく、あなたの応答、スティーブありがとう。私は後でそれをやります。 – YourMom

2
<?php 

$parentNum = 0; 

foreach($parents as $parent): ?> 
     <div class='popup-screen' id = "popup"> 
      <div class = "spacing"> 
      Do you want to delete this data? 
      </div> 
      <a href="list_users.php?parentNum=<?php echo $parent[$parentNum]; ?>"> <input type="button" value="list_users.php?parentNum=<?php echo $parent[$parentNum]; ?>" class = "popup-button"> </a> 
      <input type="button" value="CANCEL" class = "popup-button" onClick = "hide();"> 
     </div> 
     <tr class = "tr-1"> 
      <td onClick = "document.location = 'viewParent.php?parentNum=<?php echo $parent[$parentNum]; ?>';"><img src="../<?php echo $parent->image_path(); ?>" width="100" height = "100" class = "profile-pic"/></td> 
      <td onClick = "document.location = 'viewParent.php?parentNum=<?php echo $parent[$parentNum]; ?>';">Parent</td> 
      <td onClick = "document.location = 'viewParent.php?parentNum=<?php echo $parent[$parentNum]; ?>';"><?php echo $parent[$parentNum]->username; ?></td> 
      <td onClick = "document.location = 'viewParent.php?parentNum=<?php echo $parent[$parentNum]; ?>';"><?php echo ucwords($parent[$parentNum]->firstName); ?></td> 
      <td onClick = "document.location = 'viewParent.php?parentNum=<?php echo $parent[$parentNum]; ?>';"><?php echo ucwords($parent[$parentNum]->lastName); ?></td> 
      <td onClick = "show();"><img src = "../stylesheets/images2/delete-icon.png" height="25" width="25" ></td> 
     </tr> 
<?php 

$parentNum++; 

endforeach; ?> 
+0

parentNumの配列を作成するにはどうすればよいですか?そして、どのようにして配列を適切にループするのですか? – YourMom

+0

今すぐお試しください..... – NCoder

+0

お返事ありがとうございます。 $ parent = UserParent :: find_all();この関数があることを忘れてしまいました。そして、$ parent-> parentNumは、userParentクラスからparentNumを取得する方法です。データベースからデータを取得しますが、データはすでに使用可能なため初期化されていません。 – YourMom

関連する問題

 関連する問題