Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP/ASP问题理解_Php_Jquery_Asp.net - Fatal编程技术网

PHP/ASP问题理解

PHP/ASP问题理解,php,jquery,asp.net,Php,Jquery,Asp.net,我来自.Net背景,我正在努力熟悉PHP。 到目前为止,还没有那么有趣 我不理解的是这些语言对多页的痴迷,以及JQuery的大量AJAX调用 但也许我做错了什么 我试图使一个简单的登录页面,可能看起来像在ASP <body runat="server"> <div id="form-container runat="server"> <form id="form1" runat="server"> <asp:Label

我来自.Net背景,我正在努力熟悉PHP。 到目前为止,还没有那么有趣

我不理解的是这些语言对多页的痴迷,以及JQuery的大量AJAX调用

但也许我做错了什么

我试图使一个简单的登录页面,可能看起来像在ASP

<body runat="server">
    <div id="form-container runat="server">
    <form id="form1" runat="server">

        <asp:Label ID="usernameLabel" runat="server"  Text="Username:"></asp:Label>
        <asp:TextBox ID="username" Text="" runat="server" />

        <asp:Label ID="passwordLabel" runat="server"  Text="Password:"></asp:Label>
        <asp:TextBox ID="password" Text="" runat="server" />

    </form>
    </div>
</body>
但是在PHP中,我看到的指南告诉我创建独立的PHP页面,并使用Jquery与服务器端代码交互。因此,我必须构建大量的代码来复制上面所述的登录

是我做错了什么,还是这就是php和asp之间的区别? 或者换句话说,我如何将我的php函数嵌入到我的网页上,并像使用asp一样与php元素交互


一如既往,谢谢。

在PHP中,您没有ASP.Net中的代码概念。PHP在HTML页面本身上使用服务器标记。此外,PHP没有像ASP.Net这样的服务器控件,只需使用HTML控件即可

与ASP.Net一样,您不需要Ajax或jQuery来实现您所说的登录页面。您没有输入太多代码,但下面是代码到PHP的快速翻译:

<body>
    <div id="form-container>
    <form id="form1" action="">
        <span id="usernameLabel">Username:</span>
        <input type="text" id="username" />
        <span id="passwordLabel">Password:</span>
        <input type="text" id="password" />
    </form>
    </div>
<?php
    if($_POST["username"]) != null && $_POST["username"]) != ""){
        //do something
    }
    else if($_POST["password"]) != null && $_POST["password"]) != ""){
        //do something 
    }
    else{
        // attempt login
    }
?>
</body>


你问的不是很清楚。jQuery和AJAX与PHP本身无关;您可以很容易地在ASP.NET中使用它们或不使用它们。@EdCottrell我看到的指南似乎都使用Jquery/Ajax来利用PHP。我怎么可能没有使用JQuery/Ajax并用PHP生成类似的结构呢?抱歉,如果这不是我最初的问题。请使用HTML表单并提交到PHP页面。命名元素将通过
$\u POST
$\u GET
访问,具体取决于所使用的方法……或者,在重新阅读之后,我可能误读了它。@Christopher我不知道您在看什么指南,但是,jQuery和AJAX与PHP无关。jQuery是一个JavaScript库。AJAX是一种JavaScript技术,用于在不导航到新页面的情况下将客户端与服务器进行通信。您可以像在ASP.NET中一样在PHP中处理POST数据;您不必使用jQuery。听起来您需要搜索PHP中的基本表单处理教程;无论您看到的是什么,都不是我所说的“基本”。这是一个很好的解释,尽管您可以将
if(blah!=null&&blah!=“”)
条件简化为
if(!empty(blah))
。谢谢,这是我或多或少想要的。这比我在谷歌上找到的那篇文章要有用得多。事实上,这仍然不是我想要的。。。为了发布,默认情况下必须重定向。为了在不重定向到新页面的情况下发布,您必须使用AJAX。见:。。。。在ASP中,这是不必要的。我不需要重定向来让我的C#函数做一些事情。实际上你错了。它在ASP.Net中完全相同。您不能在未提交表单的情况下发布(即重定向)。ASP.Net会自动为您执行此操作。检查任何ASP.Net页面的HTML源代码,您将看到提交页面的JavaScript代码。在PHP和ASP.Net中,如果不想重新加载整个页面,则需要使用Ajax。没有区别,因为两者都是以HTML为基础的。微软只是自动化了很多东西,所以ASP.Net开发人员不知道幕后发生了什么。@RacilHilan好的,我相信你。只是我不想为了一个非常非常小的项目而费心去写大量的代码。我想我为我的项目选择了错误的技术。
<body>
    <div id="form-container>
    <form id="form1" action="">
        <span id="usernameLabel">Username:</span>
        <input type="text" id="username" />
        <span id="passwordLabel">Password:</span>
        <input type="text" id="password" />
    </form>
    </div>
<?php
    if($_POST["username"]) != null && $_POST["username"]) != ""){
        //do something
    }
    else if($_POST["password"]) != null && $_POST["password"]) != ""){
        //do something 
    }
    else{
        // attempt login
    }
?>
</body>