未定义索引:___ mysqli_ston [英] Undefined index: ___mysqli_ston

查看:89
本文介绍了未定义索引:___ mysqli_ston的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试从文件中将一些json数据解析到mysql数据库中.我的原始代码如下:

I am trying to parse some json data, into a mysql database, from a file. My original code was as follows:

<?php
$response = array();
$res=array();
$json = file_get_contents('C:\Users\Richard\Desktop\test.json');

if($json!=null){
$decoded=json_decode($json,true);
//$decode= var_dump($decoded);
//$ss=$decode["array"];
//echo $decoded['number'];

if(is_array($decoded["configurationItems"]))
{
foreach($decoded["configurationItems"] as $configurationItems)
//for($i=0;$i>sizeof($decoded["configurationItems"]);$i++)

 {


$configurationItemVersion=$configurationItems["configurationItemVersion"];
echo "<br />","configurationItemVersion:",$configurationItemVersion,"<br    />";

$configurationItemCaptureTime=$configurationItems["configurationItemCaptureTime"];
echo "configurationItemCaptureTime:",$configurationItemCaptureTime,"<br />";

$configurationStateId=$configurationItems["configurationStateId"];
echo "configurationStateId:",$configurationStateId,"<br />";


 $result = mysql_query("INSERT INTO configuration_item(configurationItemVersion,configurationItemCaptureTime,configurationStateId)


VALUES('$configurationItemVersion','$configurationItemCaptureTime','$configurationStateId')")or die("Insert Failed ".mysql_error());;

}// check if row inserted or not
if ($result) {
    // successfully inserted into database
    $response["code"] = 1;
    $response["message"] = "successfully stored";

    // echoing JSON response
    echo json_encode($response);
} else {
    // failed to insert row
    $response["code"] = 2;
    $response["message"] = "Oops! An error occurred.";

    // echoing JSON response
    echo json_encode($response);
}

}
}

?>

由于被贬低而失败;因此,与其选择更改错误处理程序以忽略此错误(这是非常糟糕的做法),我选择使用一个便捷的转换工具转换为mysqli:

which failed due to being depricated; so rather than altering the error handler to ignore this (really bad practice), I opted to convert to mysqli using a handy conversion tool sourced here : https://github.com/philip/MySQLConverterTool

我在上述代码上运行了转换器,并生成了以下代码:

I ran the converter on the aforementioned code and it generated the following:

<?php 
$response = array(); 
$res=array(); 
$json = file_get_contents('C:\Users\Richard\Desktop\test.json'); 

if($json!=null){ 
$decoded=json_decode($json,true); 
//$decode= var_dump($decoded); 
//$ss=$decode["array"]; 
//echo $decoded['number']; 

if(is_array($decoded["configurationItems"])) 
{ 
foreach($decoded["configurationItems"] as $configurationItems) 
//for($i=0;$i>sizeof($decoded["configurationItems"]);$i++) 

 { 


$configurationItemVersion=$configurationItems["configurationItemVersion"]; 
echo "<br />","configurationItemVersion:",$configurationItemVersion,"<br />"; 

$configurationItemCaptureTime=$configurationItems["configurationItemCaptureTime"]; 
echo "configurationItemCaptureTime:",$configurationItemCaptureTime,"<br />"; 

$configurationStateId=$configurationItems["configurationStateId"]; 
echo "configurationStateId:",$configurationStateId,"<br />"; 


$result = mysqli_query($GLOBALS["___mysqli_ston"], "INSERT INTO     configuration_item(configurationItemVersion,configurationItemCaptureTime,configurationStateId) 


VALUES('$configurationItemVersion','$configurationItemCaptureTime','$configurationStateId')")or die("Insert Failed ".((is_object($GLOBALS["___mysqli_ston"])) ? mysqli_error(
 "]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false)));; 

}// check if row inserted or not 
if ($result) { 
    // successfully inserted into database 
    $response["code"] = 1; 
    $response["message"] = "successfully stored"; 

    // echoing JSON response 
    echo json_encode($response); 
} else { 
    // failed to insert row 
    $response["code"] = 2; 
    $response["message"] = "Oops! An error occurred."; 

    // echoing JSON response 
    echo json_encode($response); 
} 

} 
} 



?> 

运行此代码后,我得到标题中的错误消息(未定义索引:___mysqli_ston),并且不知道如何解决它,任何帮助将不胜感激.

upon running this code I get the error message in the title (Undefined index: ___mysqli_ston) and have no idea how to fix it, any help would be much appreciated.

ps我正在使用laravel框架,如果这有所作为或开放其他解决方案.

ps I am using the laravel framework if that makes a difference or opens up other solutions.

我现在知道该错误与以下事实有关:我没有数据库连接字符串,即生成器生成了$ GLOBALS ["___ mysqli_ston".

I now know that the error relates to the fact that I have no database connection string ie $GLOBALS["___mysqli_ston is generated by the generator.

据我了解,laravel负责在其mvc架构中定义数据库连接,因此不需要重新定义它.考虑到我的代码是什么样子?

it was my understanding that laravel took care of defining the database connection in its mvc architecture and therefore this does not need to be redefined. with that in mind what would my code look like ?

推荐答案

您必须已使用类似方法连接到mysql

you must have connected to mysql using something like this

$con=mysqli_connect("localhost","my_user","my_password","my_db");

替换此行

$result = mysqli_query($GLOBALS["___mysqli_ston"], "INSERT INTO     configuration_item(configurationItemVersion,configurationItemCaptureTime,configurationStateId) 

与此

$result = mysqli_query($con, "INSERT INTO     configuration_item(configurationItemVersion,configurationItemCaptureTime,configurationStateId) 

这篇关于未定义索引:___ mysqli_ston的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆