2012-11-15 20 views
1

HTML中的现有代码允许访问者订购伴随图像中显示的项目。现有的代码使用一个表单和一个使用输入字段(type =“submit”)创建的“订单”按钮来发送适当的尺寸,价格,折扣和其他字段到雅虎商店进行处理。

我需要更改此代码,以便在访问者点击“订购”按钮(在PHP中检查$ _SESSION)之前检查用户是否要登录,或者他们点击“订购”按钮(onclick )。如果用户未登录,则访问者需要重定向到登录/注册页面,以便他们可以加入组织,然后将其返回到之前的产品页面。如果他们已经成功登录,它应该提交表单并将变量发送到雅虎商店。雅虎商店代码的作品,我不希望任何人知道和/或疑难解答,但我需要一个想法如何最好: 1)检查,以确定访问者是否登录, 2)如果登录, 3)如果没有登录,指定“订单”按钮为“登录”,点击后,将访客重定向到login_logout.php。例程(弹出),然后将访问者返回到先前的位置,他们现在可以看到处于其原始状态的“订单”按钮,并可以下订单。注意:session_start();正在另一个名为“login_logout.php”的PHP文件中处理。

The area that I'm working with is the <p class="submit"> paragraph. 

原始的HTML代码:

<form action="<!--#ystore_order id=ae009 -->" method="post"> 
    <h1><!--#ystore_catalog id=ae009 field=name --></h1> 
    <div class="productImage"> 
    <!--#ystore_catalog id=ae009 field=image format=html --> 
    </div> 

    <div class="order"> 
    <p class="salePrice"> 
    <em>For Sale Price:</em> 
    Enter your <a href="http://www.mydomain.com/coderequest.html" target="_blank"  class="external">promo code </a> at checkout 
    </p> 
    <p class="regularPrice"><em>Regular Price</em> <!--#ystore_catalog id=ae009 field=price format=html --></p> 
    <p class="options"><!--#ystore_catalog id=ae009 field=options format=html --></p> 
    <p class="sole"><!--#ystore_catalog id=ae009 field=sole --></p> 
    <p class="size"> 
     <a onclick="MM_openBrWindow('../../Size_Chart.html','SizeChart1','width=910,height=255')"><!--#ystore_catalog id=ae009 field=size --></a> 
    </p> 
    <p class="size">*Validate width/size availability</p> 
<!--******************************************************************************************--> 
    <p class="submit"> 
     <input type="submit" value="Order" /> 
    </p> 
<!--******************************************************************************************--> 
    </div> 

    <h2 class="manufacture"><!--#ystore_catalog id=ae009 field=name --></h2> 
    <p class="style"><em>Style</em> <!--#ystore_catalog id=ae009 field=label --></p> 
    <p class="description"><!--#ystore_catalog id=ae009 field=caption --></p> 
    <p class="link"><a href="<!--#ystore_catalog id=ae009 field=productlink -->" target="_blank" class="external">Additional Product Information</a></p> 
</form> 

这是我想到了就去做:

<form ...>    
    <div class="order"...> 
    ....... additional lines of code ....... 
    <p class="submit"> 
     <?php if($_SESSION['logged_in']) { ?> 
     <p><input type="submit" value="Order" /></p> 
     <?php } else { ?> 
     <p><input type="button" src="http://mydomain.com/login_logout.php" value="Login" /></p> 
     <?php } ?> 
    </p> 
    </div> 
    <...miscellaneous irrelevant bs...> 
</form> 

不过,我做这个形式语句中似乎当它不工作。我在这里靠近正确的方法吗?我知道我正在处理使用服务器端语言的客户端函数,但是如果我只是检查$ _SESSION状态,这是否重要?我查看了许多其他常见问题解答,我发现它们与表单语句中的PHP有关,也考虑从输入字段语句中的onclick =“zzzzz.js”指令调用PHP函数。似乎没有任何工作或直接适用于我的方案。预先感谢您的帮助。

+0

什么价值'$ _SESSION [ 'LOGGED_IN']'携带登录并没有登录 – itachi

回答

0

这可能不是回答你的问题,但我喜欢下面的线将无法正常工作指出,

<p><input type="button" src="http://mydomain.com/login_logout.php" value="Login" /></p>

页不会重定向到login_logout.php

这里是转向的正确方法,

<p><input type="button" onclick="window.location='http://mydomain.com/login_logout.php'" value="Login" /></p> 
+0

我看到了与window.locatin指令的答案和问题是我需要的逻辑到figu当他们点击订单按钮时​​,退出用户是否登录。在显示按钮之前,逻辑实际上需要这样做,因为如果他们没有登录,我希望按钮读取“登录”,如果他们是,请按“顺序”。 – user1825642

0

,而不是

if($_SESSION['logged_in']) 

尝试

if(isset($_SESSION['logged_in'])) 
相关问题