繁体   English   中英

尝试修复“尝试在*行*上获取非对象的属性”错误

[英]Trying to fix a “Trying to get property of non-object in * on line *” error

我知道此代码可能容易受到SQL注入的攻击,这没关系,这是一个永远不会公开的私人家庭项目,除我以外,唯一可以访问此代码的人是我的父亲和兄弟。

我在一个网站上按下了某些按钮,将您带到一家商店,但由于此错误,商店无法加载:

<b>Notice</b>:  Trying to get property of non-object in <b>shop.php</b> on line <b>12</b>

有什么事吗 我曾尝试在互联网上寻找解决方案,但没有找到解决方案。

这是受影响的代码行:

if (!isset($HTTP_RAW_POST_DATA)) {
$HTTP_RAW_POST_DATA = file_get_contents("php://input");

$doc = new DOMDocument();
$doc->loadXML($HTTP_RAW_POST_DATA);

$intShopId = $doc->getElementsByTagName('intShopId');
$shop_id = $intShopId->item(0)->nodeValue;

在这种情况下的最后一行是第12行。

我知道这是因为$intShopId不是对象。 我认为它必须是作为参数传递的全局变量,但在这种情况下,我无法弄清楚出了什么问题,我将不胜感激。

在此问题中可能存在语法和/或拼写错误,对于这种情况,我深表歉意。 我来自瑞典。

问题将出在这条线上:

$intShopId = $doc->getElementsByTagName('intShopId');

由于没有这样的标记,例如<int> -甚至没有任何以该标记开头的标记,因此该方法返回null或其他无用的东西。

您可能正在寻找使用类似的方法:

$doc->getElementById('intShopId');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM