我對PHP非常陌生,有人問我編輯他們的網頁,並且我花了半天精力熟讀HTML。 (我是你看到的藝術家)喘氣...PHP按鈕來更改href鏈接SUBMIT
我的問題?客戶希望他們的管理面板上有一個ON/OFF開關,它將顯示前端的兩個頁面中的任何一個。我的猜測是一個腳本,它會將父頁面上的href更改爲特定的內容。我不知道如何做到這一點。請幫忙。
我缺乏代碼的能力我不止彌補我真棒藝術技巧,所以我會欠你一個UI或兩個)
請多關照。
我對PHP非常陌生,有人問我編輯他們的網頁,並且我花了半天精力熟讀HTML。 (我是你看到的藝術家)喘氣...PHP按鈕來更改href鏈接SUBMIT
我的問題?客戶希望他們的管理面板上有一個ON/OFF開關,它將顯示前端的兩個頁面中的任何一個。我的猜測是一個腳本,它會將父頁面上的href更改爲特定的內容。我不知道如何做到這一點。請幫忙。
我缺乏代碼的能力我不止彌補我真棒藝術技巧,所以我會欠你一個UI或兩個)
請多關照。
您將需要一個表示ON/OFF開關值的數據庫變量。值可以是1或0或任何你想要的。我會有一個單一的PHP頁面,稱之爲page_redirect.php
,它只是有一個條件測試數據庫中的標誌。它應該看起來像這樣:
<?php
$flag = //value from database
if ($flag == 0)
{
header("Location: url of first page");
}
else
{
header("Location: url of second page");
}
exit;
?>
這樣,如果客戶想要添加或更改頁面,您將不必在一百萬個不同的地方更改代碼。
如果我是你,我會創建jpeg的一個紅色和其他白色......或其他,然後根據每個提交創建會話,或者你可以說。
<?php
if(isset($_SESSION['on']) && !empty($_SESSION['on'])) {
echo "<img src='red.jpg' /> ";
}else {
echo "<img src='yellow.jpg' />";
} ?>
上面的代碼guaratees你,如果「上的」會話設置,它會變成紅色,否則,它將永遠是黃色。現在
,與按鈕,如何打開和關閉
的事情,我想活躍的會話,你可以做這樣的事情下面。
<?php
if(isset($_POST['on'])) {
$_SESSION['on'] = true;
}else {
$_SESSION['on'] = false;
}
?>
這實際上不是最簡單的任務,你最終可能會不得不向你的朋友/客戶承認你無法做到這一點。我不能只爲你編寫代碼,因爲根據現有的源代碼實現的代碼會有所不同 - 但是如果你願意花時間閱讀PHP手冊並希望學習,我可以指出你的方向。
管理頁面上的按鈕需要在Web服務器上保存一個值,告訴最終用戶內容要顯示的內容(您的案例爲第1頁或第2頁)。這樣做的最自然的方式是使用php將值存儲在數據庫中,通常是MySQL。這將需要您花一些時間學習MySQL的基本用法,但您的客戶端Web服務器需要MySQL支持和一個可連接到的活動數據庫。
另一種方法是將信息存儲在服務器上的文件中。在PHP中,您可以使用文件命令來寫入數據。有PHP網站上的例子,從這裏開始:
http://www.php.net/manual/en/ref.filesystem.php
看的fopen,FWRITE,FREAD和FCLOSE。如果您選擇該方法,它們就是您需要的命令。
但是,當您編寫數據時,最終用戶所看到的頁面將不得不加載它(使用數據庫查詢或fopen,fread和fclose),然後可以對存儲在文件中的值進行操作。一個簡單的方法來改變看到哪個頁面將存儲兩個獨立的頁面作爲PHP文件,有第三個PHP頁面,客戶端實際上看到並使用PHP的「包括」功能加載正確的文件取決於您加載的數據。即類似的東西:
if ($page_type == 0)
{
include "page_1.php";
}
else
{
include "page_2.php";
}
至少,這是我能想到的最簡單的方法。
有很多的方式,從動態對jQuery來靜態PHP:
JQUERY:
首先獲得您的按鈕:
<button id="i1">Show Page 1</button>
<button id="i2">Show Page 2</button>
<div id="loadhere"></div>
現在,使用jQuery在加載網頁特定div。
$("#i1").click(function(){
$("#loadhere").load("page1 link here");
});
$("#i2").click(function(){
$("#loadhere").load("page2 link here");
});
PHP:
$page = ($selected_page == 0 ? page1:page2)
include("$page.php"); OR header("Location:$page.php");
很難猜出如何處理這個問題,不知道您的客戶端腳本是如何工作的。 – Kermit 2013-02-11 19:27:08
我們不在這裏爲你做你的工作......對不起。 – 2013-02-11 19:27:09
你能解釋兩頁中差異的性質嗎?客戶希望根據交換機,不同的功能還是兩者(基本上是完全不同的頁面)顯示不同的外觀? – Christian 2013-02-11 19:33:09