小编Nic*_*erg的帖子

使用jQuery动态填写表单值

我知道如何使用纯PHP执行此操作,但我需要在不重新加载页面的情况下执行此操作.无论如何使用jQuery有效地撤回一些数据库结果(基于用户在表单上的第一个文本字段中输入的内容)然后使用从db查询中拉回的数据填充一些剩余字段?

基本上我希望看​​到用户离开文本字段(通过跳出或通过单击下一个字段)和繁荣,使用在该字段中输入的值提交查询,然后填充后续字段w/oa页面重新加载.

我熟悉jQuery的基础知识,但我还没有用它来做这样的事情,我从服务器上取回数据并尝试在客户端填充它.

任何关于如何最好地开始这个的建议/例子将非常感激.谢谢.

  • 尼古拉斯

javascript database ajax jquery dynamic

24
推荐指数
3
解决办法
10万
查看次数

真正摧毁PHP会话?

我听到过关于这个主题的不同反应,那么什么是破坏PHP会话的可靠方法呢?

session_start();
if(isset($_SESSION['foo'])) {
   unset($_SESSION['foo'];
   ...
}
session_destroy();
Run Code Online (Sandbox Code Playgroud)

在最简单的情况下,这是否足以真正终止用户和服务器之间的会话?

php session

18
推荐指数
1
解决办法
2万
查看次数

从Node.js POST到PHP

我试图将Node.js应用程序中的一些数据发布到PHP脚本.暂时我只是构建一个概念证明,但我无法将实际数据传递给PHP端.请求通过,我得到200回来,但PHP认为$ _POST数组是空的.

这是我的节点代码:

// simple end point just for testing

exports.testPost = function(request, response) {
    data = request.body.data;

    postToPHP(data);

    response.end(data);
}

function postToPHP (data) {
    var http = require('http');

    var options = {
        host : 'localhost',
        port : 8050,
        path : '/machines/test/index.php',
        method : 'POST',
        headers : {
            'Content-Type' : 'application/json',
            'Content-Length' : Buffer.byteLength(data)
        }
    };

    var buffer = "";

    var reqPost = http.request(options, function(res) {
        console.log("statusCode: ", res.statusCode);

        res.on('data', function(d) {
            console.info('POST Result:\n');
            //process.stdout.write(d);
            buffer = buffer+data;
            console.info('\n\nPOST completed'); …
Run Code Online (Sandbox Code Playgroud)

javascript php post node.js express

14
推荐指数
1
解决办法
1万
查看次数

嵌套的foreach()

我有以下数组:

Array ( 
  [1] => Array ( 
    [spubid] => A00319 
    [sentered_by] => pubs_batchadd.php
    [sarticle] => Lateral mixing of the waters of the Orinoco, Atabapo
    [spublication] => Acta Cientifica Venezolana
    [stags] => acta,confluence,orinoco,rivers,venezuela,waters
    [authors] => Array ( 
      [1] => Array ( 
        [stype] => Author 
        [iorder] => 1 
        [sfirst] => A
        [slast] => Andersen ) 
      [2] => Array ( 
        [stype] => Author 
        [iorder] => 2 
        [sfirst] => S.
        [slast] => Johnson ) 
      [3] => Array ( 
        [stype] => Author 
        [iorder] => 3 …
Run Code Online (Sandbox Code Playgroud)

php arrays foreach loops

13
推荐指数
2
解决办法
6万
查看次数

在PostgreSQL中的数组列中查找字符串

我在PostgreSQL数据库中构建了一系列视图,其中包含几个数组列.视图定义如下:

create view articles_view as 
  (select articles.*,
   array(select row(people.*)::people 
     from people 
     where articles.spubid=people.spubid and 
       people.stype='Author' and 
       bactive='t' 
     order by people.iorder) as authors,
   array(select row(people.*)::people 
     from people 
     where articles.spubid=people.spubid and 
       people.stype='Editor' and 
       bactive='t' 
     order by people.iorder) as editors,
   array(select row(people.*)::people 
     from people 
     where articles.spubid=people.spubid and 
       people.stype='Reviewer' and 
       bactive='t'
     order by people.iorder) as reviewers,
   array(select row(status.*)::status 
     from status 
     where articles.spubid=status.spubid and 
       bactive='t') as status
  from articles 
  where articles.bactive='t');
Run Code Online (Sandbox Code Playgroud)

基本上我想要做的是在'author'列上的iLike,以确定该数组中是否存在特定的用户ID.显然我不能在该数据类型上使用iLike,所以我需要找到另一种方法.

以下是'authors'数组中的数据示例:

{"(2373,t,f,f,\"2011-08-01 11:57:40.696496 \",/ Pubs/pubs_edit_article.php,\"2011-08-09 15:36:29.281833 \",000128343, A00592,作者,1,尼古拉斯,K.,Kreidberg,\ "\",123456789,T,管理员,A,A,A,0,\ "\") ""(2374,T,F,F,\ "2011-08-01 11:57:40.706617 …

sql database arrays postgresql

11
推荐指数
2
解决办法
1万
查看次数

"走"JSON响应并填充表单字段 - 更有效的方法?

我知道有一个更优雅/有效的方法(在php中我会使用foreach)但是使用jQuery我如何走JSON响应的var/val对并填充与字段名称相同id的表单字段在JSON响应中?

这是我的JSON响应:

[{"field":"svendor_name","value":"Vendor Name Inc."},{"field":"svendor_addr1","value":"1234 Vendor Lane."},{"field":"svendor_addr2","value":"Suite 100"},{"field":"svendor_city"
,"value":"Vendorville"},{"field":"svendor_state","value":"CA"},{"field":"svendor_zip","value":"90210"},{"field"
:"svendor_phone","value":"800-555-1234"}]
Run Code Online (Sandbox Code Playgroud)

这是我填充表单的jQuery代码:

$(document).ready(function()
{
    $('#svendor_name').bind("change", function()
    {
        var svendor = $("#svendor_name").val();
        svendor = svendor.replace(/&/g, '*');
        $.getJSON("get_vendors.php?sname=" + svendor,
        function(data)
        {
            $.each(data,
                function(i, item)
                {
                    if(item.field == "svendor_name")
                    {
                        $("#svendor_name").val(item.value);
                    }
                    else if(item.field == "svendor_addr1")
                    {
                        $("#svendor_addr1").val(item.value);
                    }
                    else if(item.field == "svendor_addr2")
                    {
                        $("#svendor_addr2").val(item.value);
                    }
                    else if(item.field == "svendor_city")
                    {
                        $("#svendor_city").val(item.value);
                    }
                    else if(item.field == "svendor_state")
                    {
                        $("#svendor_state").val(item.value);
                    }
                    else if(item.field == "svendor_zip")
                    {
                        $("#svendor_zip").val(item.value);
                    }
                    else if(item.field == "svendor_phone")
                    {
                        $("#svendor_phone").val(item.value); …
Run Code Online (Sandbox Code Playgroud)

jquery json

6
推荐指数
2
解决办法
9068
查看次数

表格不提交JS

我有世界上最简单的javascript函数:

fnSubmit()
{
  window.print();
  document.formname.submit();
}
Run Code Online (Sandbox Code Playgroud)

这叫做:

<button type="button" id="submit" onclick="fnSubmit()">Submit</button>
Run Code Online (Sandbox Code Playgroud)

一切都很好,打印对话框显示,但在打印或取消打印后,我收到以下错误:

"document.formname.submit不是函数"

我的表单定义如下:(显然我没有在实际代码中使用formname,但你明白了)

<form name="formname" id="formname" method="post" action="<?=$_SERVER['SCRIPT_NAME']?>">
Run Code Online (Sandbox Code Playgroud)

显然我并不想在这里做任何特别的事情,我过去也使用过类似的方法,我在这里想念的是什么?

javascript onclick submit

6
推荐指数
3
解决办法
2万
查看次数

使用 .htaccess 仅在存在具有特定值的标头时允许请求

我有一个情况,我想保护一些文件(列出目录并访问内容),除非存在特定标头并且该标头包含正确的值。

例如,如果存在名为“x-test-header”的标头并且其值为“abc123”,则让流量通过,否则返回 403。

我尝试过多种方法,例如:

RewriteEngine On

RewriteCond %{HTTP_x-test-header} !^abc123
RewriteRule ^.*$ - [R=403,L]
Run Code Online (Sandbox Code Playgroud)

上面的代码可以阻止流量,但是当我使用 REST 客户端包含标头时,它仍然返回 403。显然我没有做正确的事情,有人能指出我正确的方向吗?

在 AWS 上使用 Apache 2.4.33。

apache .htaccess mod-rewrite

6
推荐指数
1
解决办法
3783
查看次数

setAttribute,onClick和跨浏览器兼容性

我已经阅读了很多关于此的帖子,但没有任何可靠的答案.这是我的代码:

// button creation
onew = document.createElement('input');
onew.setAttribute("type", "button");
onew.setAttribute("value", "hosts");
onew.onclick = function(){fnDisplay_Computers("'" + alines[i] + "'"); }; // ie
onew.setAttribute("onclick", "fnDisplay_Computers('" + alines[i] + "')"); // mozilla
odiv.appendChild(onew);
Run Code Online (Sandbox Code Playgroud)

现在,setAttribute()方法(带有mozilla注释)在mozilla中工作正常,但只有在它上面的行之后才会出现.换句话说,它似乎只是默认为最后设置的那个..onclick方法(使用ie注释)在任何一种情况下都不起作用,我使用不正确吗?

无论哪种方式,我都找不到在IE中完成这项工作的方法,更不用说两种方式了.我在使用.onclick方法时确实更改了函数调用,只需简单调用一个警报函数就可以正常工作,这就是为什么我认为我的语法不正确.

长话短说,我无法让onclick参数在IE/Mozilla之间保持一致.

- 尼古拉斯

ajax dom setattribute

5
推荐指数
2
解决办法
2万
查看次数

jQuery JSON问题

我想在用户在#sid字段中输入值后立即使用数据库中的值填充表单字段.这是我的jQuery/HTML示例:

<script src="jquery-1.3.1.min.js"></script>
<script type="text/JavaScript">
$(document).ready(function()
{
  $('#sid').bind("change", function(){
    $.getJSON("test.php?sid=" + $("#sid").val(), 
    function(data)
    {
      $.each(data.items, 
      function(i, item)
      {
        if (item.field == "saffil")
        {
              $("#saffil").val(item.value);
        }
        else if (item.field == "sfirst")
        {
              $("#sfirst").val(item.value);
        }
      });
      });
   });
});
</script>
Run Code Online (Sandbox Code Playgroud)

这是我的处理脚本(test.php,由.getJSON方法调用)

<?
require_once("db_pers.inc");

$ssql = "SELECT * FROM contacts_mview WHERE sempid = '".$_GET['sid']."'";

$rres = pg_query($hdb, $ssql);
pg_close($hdb);

$ares = pg_fetch_assoc($rres);

$json = array(array('field' =>  'saffil',
            'value' =>  $ares['saffil']),
          array('field' =>  'sfirst',
            'value' =>  $ares['sfirst']));

echo json_encode($json);
?>
Run Code Online (Sandbox Code Playgroud)

根据firebug,GET param被传递到test.php并且JSON对象恢复正常:

[{"field":"saffil","value":"Admin"},{"field":"sfirst","value":"Nicholas"}]
Run Code Online (Sandbox Code Playgroud)

但是页面上没有任何反应,我收到以下错误消息: …

javascript php ajax jquery json

3
推荐指数
1
解决办法
6986
查看次数