我正在以更简单的方式处理我现有的页面并遇到一些问题。
我已经尝试使用$_GET
来缩小它,但是这个方法遇到了很多问题。
这是我得到的:
$oc_a = file_get_contents('./'.$_GET.'/oc_info.html', true);
目前正是如此:
if ($_GET['pony'] == 'darkheart') die($header."<br><br>".$oc_a."<br>".$oc_b."<br>
<table style='width=80%;'>
<tr>
<td>
".$oc_c."
</td>
</tr>
</table>
");
这就是错误:
注意:第12行/home/rikuu/htdocs/twitter/index.php中的数组到字符串转换 警告:file_get_contents(./ Array / oc_info.html):无法打开流:第12行/home/rikuu/htdocs/twitter/index.php中没有此类文件或目录
到目前为止,有谁可以告诉我我做错了什么?
答案 0 :(得分:2)
您收到该错误,因为$ _GET是一个数组。例如,对于网址https://example.com/subdir?pony=cheerilee&apple=company
,请执行以下操作:
echo($_GET['pony']);
echo("<br>");
echo($_GET['apple']);
将返回:
cheerilee
company
因此,如果您的网址为https://example.com/subdir?pony=darkheart
,则您的代码将如下所示:
$ocA=file_get_contents('./'.$_GET['pony'].'/os_info.html',true);
if($_GET['pony']==='dearkheart') ...
编辑:正如sberry指出的那样,你一定要确保锁定目录。您可以检查以确保$_GET['pony']
不包含..
或/
如果你想查看$ _GET获得的变量,请运行var_dump($_GET);
,它将返回如下内容:
array(2) { ["pony"]=> string(4) "dearkheart" }
这告诉你$ _GET
中的所有数组值