spacepoet Posted February 11, 2011 Share Posted February 11, 2011 Hello: Seeking some input, please. I use single-pages in my admin panel to update and maintain each corresponding page on the front end. ADMIN = FRONT END a_Home.php = Home.php a_About.php = About.php Etc... The code is the same for each page, except I have to rename the TABLE everytime I make a new page: <?php include('../include/myConn.php'); //contains your mysql connection and table selection include('../include/myCodeLib.php'); include('include/myCheckLogin.php'); include('include/myAdminNav.php'); include('ckfinder/ckfinder.php'); include('ckeditor/ckeditor.php'); if ($_SERVER['REQUEST_METHOD'] == 'POST') { $myTitle = mysql_real_escape_string($_POST['myTitle']); $myDesc = mysql_real_escape_string($_POST['myDesc']); $myHeader = mysql_real_escape_string($_POST['myHeader']); $mySubHeader = mysql_real_escape_string($_POST['mySubHeader']); $myPageData = mysql_real_escape_string($_POST['myPageData']); $sql = " UPDATE myTestimonials SET myTitle = '$myTitle', myDesc = '$myDesc', myHeader = '$myHeader', mySubHeader = '$mySubHeader', myPageData = '$myPageData' "; mysql_query($sql) && mysql_affected_rows() ?> <script language="JavaScript"> alert("This page was updated!"); location.href = "a_Testimonials.php"; </script> <?php } $query=mysql_query("SELECT * FROM myTestimonials") or die("Could not get data from db: ".mysql_error()); while($result=mysql_fetch_array($query)) { $myTitle=$result['myTitle']; $myDesc=$result['myDesc']; $myHeader=$result['myHeader']; $mySubHeader=$result['mySubHeader']; $myPageData=$result['myPageData']; } ?> <!DOCTYPE HTML> <html> <head> <meta name="author" content="MontyTheWebmaster.com" /> <meta charset="ISO-8859-1" /> <title>Admin Area</title> <?php echo spAdminLinks(); ?> </head> <body> <div id="siteContainer"> <div id="topContainer"> <?php echo spAdminTopMenu(); ?> </div> <div id="topMenuContainer"> <div id="topMenu"> <?php echo spAdminMenu(); ?> </div> </div> <div id="contentContainer"> <div id="mainContent"> <h1>Editing: Testimonials</h1> <p> <form method="post" action="<?php echo $PHP_SELF;?>"> <input type="hidden" name="POSTBACK" value="EDIT"> <div style="float: left; width: 120px; margin-right: 30px;"> Page Title: </div> <div style="float: left; width: 550px;"> <textarea cols="80" rows="1" name="myTitle"><?php echo $myTitle; ?></textarea> </div> <div style="clear: both;"><br /></div> <div style="float: left; width: 120px; margin-right: 30px;"> Page Description: </div> <div style="float: left; width: 550px;"> <textarea cols="80" rows="1" name="myDesc"><?php echo $myDesc; ?></textarea> </div> <div style="clear: both;"><br /></div> <div style="float: left; width: 120px; margin-right: 30px;"> Page Header: </div> <div style="float: left; width: 550px;"> <textarea cols="80" rows="1" name="myHeader"><?php echo $myHeader; ?></textarea> </div> <div style="clear: both;"><br /></div> <div style="float: left; width: 120px; margin-right: 30px;"> Page SubHeader: </div> <div style="float: left; width: 550px;"> <textarea cols="80" rows="1" name="mySubHeader"><?php echo $mySubHeader; ?></textarea> </div> <div style="clear: both;"><br /></div> Page Content:<br /> <textarea cols="80" id="myPageData" name="myPageData"><?php echo $myPageData; ?></textarea> <script type="text/javascript"> CKEDITOR.replace( 'myPageData', { filebrowserBrowseUrl : 'ckfinder/ckfinder.html', filebrowserImageBrowseUrl : 'ckfinder/ckfinder.html?Type=Images', filebrowserFlashBrowseUrl : 'ckfinder/ckfinder.html?Type=Flash', filebrowserUploadUrl : 'ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files', filebrowserImageUploadUrl : 'ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images', filebrowserFlashUploadUrl : 'ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash' } ); </script> <br /> <input type="submit" value="Submit" /> </form> </p> </div> <div style="clear: both;"></div> </div> <div id="footerContainer"> <?php echo spAdminFooter(); ?> </div> </div> </body> </html> What I am curious about is how can I take this page and make it so I can add a new page, delete a page, etc. all from just one page like above? And on the frontend, what would be the best way to display the data in a search engine friendly way (i.e. without QueryStrings like MyPage.php?id=2 Link to comment https://forums.phpfreaks.com/topic/227380-creating-a-master-admin-page/ Share on other sites More sharing options...
atrum Posted February 11, 2011 Share Posted February 11, 2011 You can try something like this. <?php if(isset($_GET['p'])){ $page = $_GET['p']; } if(strpos($page,"\.") || strpos($page,"/") || strpos($page,"\\")){ $page = "";} //Check for illegal characters switch($page){ case "login": $page = HTML_ROOT."/login.php"; break; case "about": $page = HTML_ROOT."/about.php"; break; case "admin": $page = HTML_ROOT."/admincp.php"; break; default: $page = HTML_ROOT. "/welcome.html"; } if(file_exists($page)){ include_once($page); }else{ echo "The requested page is not available."; } ?> Then just include that on your master page. In the content area. You can have things navigate by using url queries. <div id="menu"> <ul> <li><a href="/index.php">: Home :</a></li> <li><a href="./?p=about">: About :</a></li> <li class="right"><a href="./?p=login">: Login :</a></li> </ul> </div><!--end: menu--> Link to comment https://forums.phpfreaks.com/topic/227380-creating-a-master-admin-page/#findComment-1172820 Share on other sites More sharing options...
spacepoet Posted February 11, 2011 Author Share Posted February 11, 2011 Hi: Thanks for giving me some direction. So, would this line: include_once($page); be the page I posted? Does it get pulled into this in that manner? Do I need to re-arrange my database to add a "case/page" field? I'm a little uncertain how all of this is suppose to work. I guess the idea is to use the form/page I posted only once, and create a navigation to recognize it by "case/page" IDs ??? Sorry, I'm a little confused. Link to comment https://forums.phpfreaks.com/topic/227380-creating-a-master-admin-page/#findComment-1172897 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.