2013-02-11 153 views
-3

我对PHP非常陌生,有人问我编辑他们的网页,并且我花了半天精力熟读HTML。 (我是你看到的艺术家)喘气...PHP按钮来更改href链接SUBMIT

我的问题?客户希望他们的管理面板上有一个ON/OFF开关,它将显示前端的两个页面中的任何一个。我的猜测是一个脚本,它会将父页面上的href更改为特定的内容。我不知道如何做到这一点。请帮忙。

我缺乏代码的能力我不止弥补我真棒艺术技巧,所以我会欠你一个UI或两个)

请多关照。

+2

很难猜出如何处理这个问题,不知道您的客户端脚本是如何工作的。 – Kermit 2013-02-11 19:27:08

+3

我们不在这里为你做你的工作......对不起。 – 2013-02-11 19:27:09

+0

你能解释两页中差异的性质吗?客户希望根据交换机,不同的功能还是两者(基本上是完全不同的页面)显示不同的外观? – Christian 2013-02-11 19:33:09

回答

1

您将需要一个表示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; 
?> 

这样,如果客户想要添加或更改页面,您将不必在一百万个不同的地方更改代码。

+0

非常感谢你@ scoobah36和@Tyler!你帮助我非常好!我现在知道我的问题是相当开放的,如果不是彻头彻尾的模糊,我很欣赏大家上学的时间,我真的这么做!如果你需要用户界面或津巴布韦之旅,我是你的家伙。我知道非常感谢你,但我很感激。我希望你们都有愉快的日子。 – babusi 2013-02-11 21:16:09

+0

不包括@Marc – babusi 2013-02-11 21:16:47

1

如果我是你,我会创建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; 

} 
?> 
1

这实际上不是最简单的任务,你最终可能会不得不向你的朋友/客户承认你无法做到这一点。我不能只为你编写代码,因为根据现有的源代码实现的代码会有所不同 - 但是如果你愿意花时间阅读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"; 
} 

至少,这是我能想到的最简单的方法。

1

有很多的方式,从动态对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");