doupaxia2478 2014-11-08 20:20 采纳率: 100%
浏览 31
已采纳

从SQL查询的变量读取字符串

SQL newb here...

$db_result = mysql_query("SELECT first_name FROM gamers WHERE comp_id = 'myid'"); works the way I want.

$compid1 = 'myid';
$db_result = mysql_query("SELECT first_name FROM gamers WHERE comp_id = @compid1");

does not yield the same results.

I have also tried $compid1 and various other things, but without success.

Sorry for the simple question, but the answer is still eluding me. Thanks!

UPDATE: Oh yea...the question. How can I use a prestored variable for my WHERE check?

  • 写回答

2条回答 默认 最新

  • duanjing9339 2014-11-08 20:24
    关注

    You need to use $ before a variable, not @. And you need to put quotes around it since it's a string:

    $db_result = mysql_query("SELECT first_name FROM gamers WHERE comp_id = '$compid1'");
    

    However, it would be best if you stopped using the mysql extension. Use PDO or mysqli, and use prepared statements with parameters. E.g. in PDO it would be:

    $stmt = $conn->prepare("SELECT first_name FROM gamers WHERE comp_id = :compid");
    $stmt->bindParam(':compid', $compid1);
    $stmt->execute();
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 删除虚拟显示器驱动 删除所有 Xorg 配置文件 删除显示器缓存文件 重启系统 可是依旧无法退出虚拟显示器
  • ¥15 vscode程序一直报同样的错,如何解决?
  • ¥15 关于使用unity中遇到的问题
  • ¥15 开放世界如何写线性关卡的用例(类似原神)
  • ¥15 关于并联谐振电磁感应加热
  • ¥60 请查询全国几个煤炭大省近十年的煤炭铁路及公路的货物周转量
  • ¥15 请帮我看看我这道c语言题到底漏了哪种情况吧!
  • ¥66 如何制作支付宝扫码跳转到发红包界面
  • ¥15 pnpm 下载element-plus
  • ¥15 解决编写PyDracula时遇到的问题