首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用数组参数检查数据库?

问如何使用数组参数检查数据库?
EN

Stack Overflow用户
提问于 2012-07-09 14:08:03
回答 1查看 73关注 0票数 0

嗨,我有一个数组,我想把一个变量传递给一个函数。

代码语言:javascript
复制
'#\@(.*?)\;#si' =>  'some before text' . retrieveName('$1') . 'some after text,'

function retrieveName($poster_id){
    $sanitized_id = sanitizeIn($poster_id);

    $getname = mysql_query("SELECT * FROM users WHERE userid = '$sanitized_id';") 
                or die(mysql_error());
    $namerow = mysql_fetch_array($getname);
    $exists = mysql_num_rows($getname);

    if($exists == "0"){
      return $sanitized_id;
    } else {
      return $namerow['username'];
    }
}

它应该取$1的值,在数据库中查找具有该id的用户,然后返回他们的用户名。但是没有参数传递给retrieveName

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-09 14:13:08

retrieveName函数应为:

代码语言:javascript
复制
function retrieveName($poster_id){
    $sanitized_id = sanitizeIn($poster_id);
    $get_name = mysql_query("SELECT * FROM users WHERE userid = '$sanitized_id';") or die(mysql_error());
    $name_row = mysql_fetch_array($get_name);
    return $name_row['username'];
}

我强烈建议在那里放置一些错误检查,但如果找不到ID会发生什么?

编辑:

如果你正在尝试做一个"preg_replace模板“,那么这行代码应该是:

代码语言:javascript
复制
'#@(.*?);#sie' =>  '"some before text".retrieveName("\1")."some after text"',

在修饰符中使用“e”来执行代码。

这应该改变,例如,"Hello,@lserni;,怎么样?“带有"Hello,some goes Sernisome after text,how goes?“

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11389811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档