Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用文件获取属性_Php_Html_Get_File Get Contents - Fatal编程技术网

Php 使用文件获取属性

Php 使用文件获取属性,php,html,get,file-get-contents,Php,Html,Get,File Get Contents,我有一个存储在变量中并显示的sql查询。我从另一个文件中获取这个文件的内容,我想恢复一些代码(这是html),以便创建链接。更准确地检索id。 My api.php $base = mysql_connect ('localhost','root',''); mysql_select_db('administrations', $base); if(isset($_GET['cp'])) { $sql = 'SELECT NOM_organisme, ID_organisme

我有一个存储在变量中并显示的sql查询。我从另一个文件中获取这个文件的内容,我想恢复一些代码(这是html),以便创建链接。更准确地检索id。 My api.php

$base = mysql_connect ('localhost','root','');
mysql_select_db('administrations', $base);

if(isset($_GET['cp']))
{
    $sql = 'SELECT NOM_organisme, ID_organisme
            FROM organismes
            WHERE code_postal LIKE "%'.$_GET['cp'].'%"
            ORDER BY NOM_organisme;';

    $req = mysql_query($sql) or die('SQL Error !<br>'.$sql.'<br />'.mysql_error());
}

while ($data = mysql_fetch_array($req))
{
    echo '<p id="'.$data['ID_organisme'].'"'.
         $data['NOM_organisme'].'</br>'.
         $data['ID_organisme'].'</p></br>';
}

我如何才能在我的index.php中获得
id=“
”?

我理解您的意图,但如果不知道这段小代码的用途,我就不会觉得它合乎逻辑:)

你有链接或类似的东西吗

基本上我应该做的是:

$base = mysql_connect ('localhost','root','');
mysql_select_db('administrations', $base);

if(isset($_POST['cp']))
{
    $sql = 'SELECT NOM_organisme, ID_organisme FROM organismes WHERE code_postal LIKE "%'.$_GET['cp'].'%" ORDER BY NOM_organisme;';
    $req = mysql_query($sql) or die('SQL Error !<br>'.$sql.'<br />'.mysql_error());

    while ($data = mysql_fetch_array($req))
    {
        echo '<p id="'.$data['ID_organisme'].'"'.$data['NOM_organisme'].'</br>'.$data['ID_organisme'].'</p></br>';
    }
} else {
        echo 'show something else';
}
$base=mysql\u connect('localhost','root','';
mysql_select_db('administrations',$base);
如果(isset($_POST['cp']))
{
$sql='从邮政编码为“%”的组织中选择名称组织,ID组织。$获取['cp']。“%”按名称组织订购;';
$req=mysql\u query($sql)或die('sql Error!
'.$sql'.
'.mysql\u Error()); 而($data=mysql\u fetch\u数组($req)) {
echo'请查看php get文档。您需要使用url参数链接到脚本,并在php代码中访问它们

如果不想使用url参数,可以使用post值


如果我没弄错,你就是

  • 在index.php中使用文件_GET_contents()向您的网站发送GET请求
  • 该网站(api.php)执行SQL查询并以HTML格式打印结果
  • php获取此HTML输出并将其存储在变量$var中
  • 您希望检索段落id属性中包含的所有值
  • 在这种情况下,您可能希望使用正则表达式。这似乎是合适的。它应该适用于您,如下所示:

    $out = array();
    preg_match_all("/id=\"([^\"]*?)\"/U", $var, $out);
    foreach ($out as $value) {
      echo 'I found some id ' . htmlspecialchars($out[$value][2]) . '<br />';
    }
    
    $out=array();
    preg\U match\U all(“/id=\”([^\“]*?)\”/U“,$var,$out);
    foreach(按$value计算){
    echo“我找到了一些id”。htmlspecialchars($out[$value][2])。
    ; }
    此外:

  • 在这种情况下,一个像样的HTML解析器更合适(例如,它与流文本中的id=“X”不匹配)
  • 您的PHP代码易受攻击
  • 您应该将纯文本清理为HTML

  • 首先,您应该尝试将API回复显示为JSON字符串,这样更方便

    如果您仍然想使用api.php,首先需要关闭开头的段落!您确实忘记了一个“>”

    echo '<p id="'.$data['ID_organisme'].'">'.
         $data['NOM_organisme'].'</br>'.
         $data['ID_organisme'].'</p></br>';
    
    echo'

    ”。 $data['NOM_organime'].
    '。 $data['ID_organime'].


    ';
    然后你需要分析你的段落。 你可以这样做:

    if(isset($_POST['cp']))
    {
        $api = "http://mywebsite.fr/api.php?cp=".$_POST['cp'];
        $var = file_get_contents($api);
        preg_match("@<p id='(.*)'@", $var, $matches);
        id = $matches[1];
    
        echo $id;
    }
    
    if(isset($\u POST['cp']))
    {
    $api=”http://mywebsite.fr/api.php?cp=“$_POST['cp'];
    $var=文件获取内容($api);
    
    preg_match(“@不,我没有链接,这是我在php代码
    Datacode postal

    之前在api.php中的所有代码。这是我的所有代码。
    $out = array();
    preg_match_all("/id=\"([^\"]*?)\"/U", $var, $out);
    foreach ($out as $value) {
      echo 'I found some id ' . htmlspecialchars($out[$value][2]) . '<br />';
    }
    
    echo '<p id="'.$data['ID_organisme'].'">'.
         $data['NOM_organisme'].'</br>'.
         $data['ID_organisme'].'</p></br>';
    
    if(isset($_POST['cp']))
    {
        $api = "http://mywebsite.fr/api.php?cp=".$_POST['cp'];
        $var = file_get_contents($api);
        preg_match("@<p id='(.*)'@", $var, $matches);
        id = $matches[1];
    
        echo $id;
    }