小编MrV*_*mes的帖子

如何在没有两个 if 语句的情况下检查 wscript.arguments(0) 的值

我希望能够检查 Windows 脚本中第一个传递的参数的值。但我希望能够以这样的方式执行此操作:如果没有传递参数,脚本将不会给出运行时错误。

这只是一个好奇心问题,因为我可以让我的脚本使用两个 if 语句,但我想知道是否有一种方法可以只使用一个(例如

monthly = false

if wscript.arguments.count > 0 then 

    if wscript.arguments(0) = "monthly" then

        monthly = true

    end if

end if
Run Code Online (Sandbox Code Playgroud)

如果能做到这一点就更整洁了......

if wscript.arguments.count > 0 and wscript.arguments(0) = "Monthly" then

    monthly = true

end if
Run Code Online (Sandbox Code Playgroud)

但这会产生下标超出范围错误,因为脚本引擎正在尝试检查不存在的数组项的值。

我知道我可以在 PHP 中进行这种类型的检查 ( if(isset($_POST['somevariable'])) && $_POST['somevariable'] == 'somevalue')

wsh

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

这是一种安全/强大的输入消毒功能吗?

这是我最近从中学到的一本书中使用的消毒函数--Sams Teach Yourself Ajax,JavaScript和PHP All in One.

我一直在自己的PHP网站上使用它.对于现实世界的使用是否安全?

function sanitizestring($var)
{
  $var = strip_tags($var);
  $var = htmlentities($var);
  $var = stripslashes($var);
  return mysql_real_escape_string($var);
}
Run Code Online (Sandbox Code Playgroud)

php mysql sanitization

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

强制PHP在继续之前等待数据库操作完成

鉴于此类代码......

$rs = $dbh->prepare("insert some stuff into the database ?");
$rs->Execute(array($somevalues));
header("Location: http://somewebpage.com");
exit;
Run Code Online (Sandbox Code Playgroud)

有没有办法强制PHP在处理代码的"标题"部分之前等待数据库更新?

我有一个更新数据的页面.我想返回一个"新鲜"页面,以便用户可以刷新它而不需要浏览器提示重新提交数据.问题是,重定向和页面加载太快.它在先前的数据库操作完成之前从数据库加载数据,因此看起来更新未在重新加载的页面上发生.我可以添加手动延迟,但这太粗糙了.我希望php代码只是等到数据库更新后才能执行其他操作.

编辑 - 04Dec11: 它似乎是一个简单的浏览器缓存问题.我已经添加header("Cache-Control: no-cache, must-revalidate");到页面顶部,它现在按预期工作.

php redirect pdo

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

如何显示转义字符?

我对这样一个新手问题感到愚蠢,我试着搜索,但我能找到的只是显示如何逃避的来源,这不是我要问的.

我正在使用PDO向数据库添加内容.结果东西被逃脱了.问题是,当我将这些东西显示给用户时,它会完全显示在数据库中.换句话说,转义单引号显示为左斜线加单引号.

我可以在所有转义的字符序列上运行某种查找/替换,但我确信大多数都是"正确"的方法来执行此操作.一种保持安全(或提高安全性)的方法

php mysql

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

将.each()与$ .ajax组合时不需要的变量行为

我有一个类似于以下的功能(为简洁起见,这里简化)

$('.somelement').each(function(){

    var me = $(this)

    var mydata = me.data('somedata')

    $.ajax({url:"phpfile.php?data=" + mydata}).done(function(returnedhtml){

        console.log(mydata)

    });

});
Run Code Online (Sandbox Code Playgroud)

每个带有类的元素.someelement都有不同的值somedata.

当我在firebug中查看ajax调用时,我看到一个不同的mydata传递给php文件.

console.log(mydata)每次都记录相同的值(即并不总是传递到ajax函数中的url的值)

我意识到这可能是由ajax调用的异步性质引起的,但即便如此,看起来"错误"也没有mydata通过代码流来获得正确的.我尝试添加async:false到ajax调用,问题就消失了,但是我得到一个警告:async:false在全局的东西中被弃用了.

是否有一种简单而正确的方法来完成我正在尝试做的事情($.ajax在每个each()循环中保持调用内部和外部的变量一致性.

ajax jquery

0
推荐指数
1
解决办法
30
查看次数

标签 统计

php ×3

mysql ×2

ajax ×1

jquery ×1

pdo ×1

redirect ×1

sanitization ×1

wsh ×1