わかりました、私はこれらのページを持っていると言います、
- /admin/admin.php
- /admin/blogger.php
メインのindex.php内に、「存在する場合は$page」関数を実行するスイッチ配列があります。これは正常に機能します。私のすべてのページは、site.com / index.php?page = about、site.com / index.php?page=miscなどから呼び出されます。
admin.phpページ内には、管理セクション(blogger / image manager / file manager / quotes manager)に4つのタブを使用するphpタブ付きナビゲーションがあります。4ページのタブ機能のスイッチを使用します。
blogger.phpは、問題のスイッチがある場所です。
今私の質問のために:ブログシステムのために複数のページを持っている代わりに、「delete.php、add.php、edit.phpなど」そして「ここでクリック(delete.php?id = 1)を削除するために」のように使用します。ブロガーのページからすべてを試して実行したかった。たとえば、「site.com/admin.php?page=blogger&act=dp/ep/ap」は、渡された$ actを取得し、スイッチを使用してアクションを完了します。
PAGEスイッチは正常に機能しますが、さらに多くのスイッチを呼び出そうとすると機能しません。これをコードとして使ってみました
if(isset($_SESSION['id'])) {
$act = $_GET['act'];
switch ($act) {
case 'ap':
addPost();
break;
case 'ep':
editPost();
break;
case 'dp':
delPost();
break;
default:
~table setup
~$query, $result
~if / while loops
~echo $row->article_id/title/author/date
echo "<a href=\"index.php?page=admin&tabindex=0&act=ep&id={$row->article_id}\">Edit</a>"
...
...
...
これが私が抱えている問題です。ページが正しく、tabindexが正しいと、機能しなくなります。本来の編集ページではなく、空白のページが表示されます。editPost.php?id = 1の方法でテストしたので、私のeditPost関数は正しいです。これは避けようとしています。はい、私の機能もここから含まれています。
URLが正しく渡されていませんか?または、アクトスイッチが正しく設定されていません。おそらく、切り替えの前にisset($ _ GET ['act'])を設定しますか?私は途方に暮れています。
ありがとうございました。