php获取html代码
Ⅰ php 获取JS执行过后的html
PHP是后台服务器语言,只会被动的等待客户端连接。
如果你想要获取执行JS后的代码,可以用ajax来实现。
写一个JS函数,获取所有的HTML代码,然后向服务器端发出异步请求,把代码发出去就是了。
Ⅱ php从数据库里读出的HTML代码然后执行怎么实现
<?php require_once("mysql_class.php");
require_once("sys_conf.inc");
header('Content-Type:text/html;Charset=GBK;');
$link_id=mysql_connect($DBHOST,$DBUSER,$DBPWD);
mysql_select_db($DBNAME);  //选择数据库my_chat
$sql="SELECT * FROM `dx_leibie`"; 
$query = mysql_query($sql);
while($row=mysql_fetch_array($query)){
//print_r($row);  //$con=array(array('新闻标题','新闻内容'),array('新闻标题2','新闻内容2'));  $title=$row[id_lang];
  $content=$row[name];
  if(!is_dir("up")) //如果此文件夹不存在,则自动建立一个
 { 
 mkdir("up");
 }$up="up/";
  echo $path=$up.$row[id_lang].'.htm';
  $fp=fopen("tmp.htm","r"); //只读打开模板
  $str=fread($fp,filesize("tmp.htm"));//读取模板中内容
  $str=str_replace("{title}",$title,$str);
  echo $str=str_replace("{content}",$content,$str);//替换内容
  fclose($fp);  $handle=fopen($path,"w"); //写入方式打开新闻路径
  fwrite($handle,$str); //把刚才替换的内容写进生成的HTML文件
  fclose($handle);
  //echo "生成成功";
} // unlink($path); //删除文件
?><?php require_once("mysql_class.php");
require_once("sys_conf.inc");
header('Content-Type:text/html;Charset=GBK;');
$link_id=mysql_connect($DBHOST,$DBUSER,$DBPWD);
mysql_select_db($DBNAME);  //选择数据库my_chat
$sql="SELECT * FROM `dx_leibie`"; 
$query = mysql_query($sql);
while($row=mysql_fetch_array($query)){
//print_r($row);  //$con=array(array('新闻标题','新闻内容'),array('新闻标题2','新闻内容2'));  $title=$row[id_lang];
  $content=$row[name];
  if(!is_dir("up")) //如果此文件夹不存在,则自动建立一个
 { 
 mkdir("up");
 }$up="up/";
  echo $path=$up.$row[id_lang].'.htm';
  $fp=fopen("tmp.htm","r"); //只读打开模板
  $str=fread($fp,filesize("tmp.htm"));//读取模板中内容
  $str=str_replace("{title}",$title,$str);
  echo $str=str_replace("{content}",$content,$str);//替换内容
  fclose($fp);  $handle=fopen($path,"w"); //写入方式打开新闻路径
  fwrite($handle,$str); //把刚才替换的内容写进生成的HTML文件
  fclose($handle);
  //echo "生成成功";
} // unlink($path); //删除文件
?><?php require_once("mysql_class.php");
require_once("sys_conf.inc");
header('Content-Type:text/html;Charset=GBK;');
$link_id=mysql_connect($DBHOST,$DBUSER,$DBPWD);
mysql_select_db($DBNAME);  //选择数据库my_chat
$sql="SELECT * FROM `dx_leibie`"; 
$query = mysql_query($sql);
while($row=mysql_fetch_array($query)){
//print_r($row);  //$con=array(array('新闻标题','新闻内容'),array('新闻标题2','新闻内容2'));  $title=$row[id_lang];
  $content=$row[name];
  if(!is_dir("up")) //如果此文件夹不存在,则自动建立一个
 { 
 mkdir("up");
 }$up="up/";
  echo $path=$up.$row[id_lang].'.htm';
  $fp=fopen("tmp.htm","r"); //只读打开模板
  $str=fread($fp,filesize("tmp.htm"));//读取模板中内容
  $str=str_replace("{title}",$title,$str);
  echo $str=str_replace("{content}",$content,$str);//替换内容
  fclose($fp);  $handle=fopen($path,"w"); //写入方式打开新闻路径
  fwrite($handle,$str); //把刚才替换的内容写进生成的HTML文件
  fclose($handle);
  //echo "生成成功";
} // unlink($path); //删除文件
?> 用以上先生成一个HTML文件,然后再用require_once("aaa.html");引进来就OK
Ⅲ php 读取(解析)html文档,并将读取到的文档转为数组(数组保留html嵌套格式)
可以使用正则表达式来解决这个问题
具体的代码很多不详细写了,举个例子给题主吧
<?php
$htmlStr='<li>首页</li>';
preg_match_all('/<li>.*?</li>/',$htmlStr,$res);
$ret=preg_replace('/(<li>|</li>)/','',$res[0][0]);
//输出res
//var_mp($res);
echo$ret;
最终输出的结果为:首页
在这个例子上题主所需要的值基本都可以用正则算法过滤出来
希望能帮到题主
如果可以,还请采纳
Ⅳ PHP如何获取需要登陆后才能看到的网页HTML代码
实际上是个模拟登陆的问题,需要写个登陆模块,解决两个问题:
1,请求登陆并刷新的函数部分:
<?php
/*****************函数部分**************************/
/*获取指定网页的内容
$url为网页地址
*/
function getcontent($url){ 
if($open=file($url)){ 
   $count=count($open); 
    for($i=0;$i<$count;$i++)
    { 
     $theget.=$open[$i]; 
     } 
  }else{ 
  die('请求过多,超时,请刷新'); 
  } 
 return $theget; 
} 
?>
2,偷取程序部分,也分两部分,
1),PHP与XML不同之处是需要特殊的调用才能支持COOKIE.或者记录SessionID(后面有说明程序)
php代码如下
<?PHP
//登陆并保存COOKIE
$f = fsockopen("www.url.net",80);
$cmd = <<<EOT
GET /test/login.php?name=test&password=test HTTP/1.0
EOT;
fputs($f,$cmd);
$result = '';
$cookie = '';
$location = '';
while($line = fgets($f))
{
$result .= $line;
//取得location跟setCookie头HTTP头信息
$tmp = explode(":",$line);
if($tmp[0]=="Set-Cookie")
$cookie .= $tmp[1];
if($tmp[0]=="Location")
$location = $tmp[1];
}
fclose($f);
2),获取页面
//下面访问你要访问的页面(这部分也可以参考下面的核心例程)
$f = fsockopen("www.url.net",80);l
//下面的cookie就是发送前页保存下的的cookie
$cmd = <<<EOT
GET /test/test.php HTTP/1.0
cookie:$cookie
EOT;
fputs($f,$cmd);
while($line = fgets($f))
{
echo $line;
}
fclose($f);
?>
核心例程就是fsockopen();
不妨再给段代码你瞧瞧:
--------------------------------------------------------------------------------
function posttohost($url, $data) 
{ 
$url = parse_url($url); 
if (!$url) return "couldn't parse url"; 
if (!isset($url['port'])) { $url['port'] = ""; } 
if (!isset($url['query'])) { $url['query'] = ""; } 
$encoded = ""; 
while (list($k,$v) = each($data)) 
{ 
$encoded .= ($encoded ? "&" : ""); 
$encoded .= rawurlencode($k)."=".rawurlencode($v); 
} 
$fp = fsockopen($url['host'], $url['port'] ? $url['port'] : 80); 
if (!$fp) return "Failed to open socket to $url[host]"; 
fputs($fp, sprintf("POST %s%s%s HTTP/1.0", $url['path'], $url['query'] ? "?" : "", $url['query'])); 
fputs($fp, "Host: $url[host]"); 
fputs($fp, "Content-type: application/x-www-form-urlencoded"); 
fputs($fp, "Content-length: " . strlen($encoded) . ""); 
fputs($fp, "Connection: close"); 
fputs($fp, "$encoded"); 
$line = fgets($fp,1024); 
if (!eregi("^HTTP/1\\.. 200", $line)) return $line ; 
$results = ""; $inheader = 1; 
while(!feof($fp)) 
{ 
$line = fgets($fp,1024); 
if ($inheader && ($line == "" || $line == "\r")) { 
$inheader = 0; 
} 
elseif (!$inheader) { 
$results .= $line; 
} 
} 
fclose($fp); 
return $results; 
} 
$data=array(); 
$data["msg"]="HELLO THIS IS TEST MSG"; 
$data["Type"]="TEXT"; 
echo posttohost("http://url/xxx", $data); 
应该说明白了吧?
另外登陆部分还有一种简单方法是把SessionID保存下来
  源代码:
<?php 
/*  
* 得到网页内容  
* 参数:$host [in] string 
*      主机名称(例如: www.url.com.cn) 
* 参数:$method [in] string 
*      提交方法:POST, GET, HEAD ... 并加上相应的参数( 具体语法参见 RFC1945,RFC2068 ) 
* 参数:$str [in] string 
*      提交的内容 
* 参数:$sessid [in] string 
*      PHP的SESSIONID 
* 
* @返回 网页内容 string 
*/ 
function GetWebContent($host, $method, $str, $sessid = '') 
{ 
    $ip = gethostbyname($host); 
    $fp = fsockopen($ip, 80); 
    if (!$fp) return; 
    fputs($fp, "$method\r\n"); 
    fputs($fp, "Host: $host\r\n"); 
    if (!empty($sessid)) 
    { 
        fputs($fp, "Cookie: PHPSESSID=$sessid; path=/;\r\n"); 
    } 
    if ( substr(trim($method),0, 4) == "POST") 
    { 
        fputs($fp, "Content-Length: ". strlen($str) . "\r\n"); //  别忘了指定长度 
    } 
    fputs($fp, "Content-Type: application/x-www-form-urlencoded\r\n\r\n"); 
    if ( substr(trim($method),0, 4) == "POST") 
    { 
        fputs($fp, $str."\r\n"); 
    } 
    while(!feof($fp)) 
    { 
        $response .= fgets($fp, 1024); 
    } 
    $hlen = strpos($response,"\r\n\r\n"); // LINUX下是 "\n\n" 
    $header = substr($response, 0, $hlen); 
    $entity = substr($response, $hlen + 4); 
    if ( preg_match('/PHPSESSID=([0-9a-z]+);/i', $header, $matches)) 
    { 
        $a['sessid'] = $matches[1]; 
    } 
    if ( preg_match('/Location: ([0-9a-z\_\?\=\&\#\.]+)/i', $header, $matches)) 
    { 
        $a['location'] = $matches[1]; 
    } 
    $a['content'] = $entity;     
    fclose($fp); 
    return $a; 
} 
/* 构造用户名,密码字符串 */ 
$str = ("username=test&password=test"); 
$response = GetWebContent("localhost","POST /login.php HTTP/1.0", $str); 
echo $response['location'].$response['content']."<br>"; 
echo $response['sessid']."<br>"; 
if ( preg_match('/error\.php/i',$response['location'])) 
{ 
    echo "登陆失败<br>"; 
} else { 
    echo "登陆成功<br>"; 
    // 不可以访问user.php,因为不带sessid参数 
    $response = GetWebContent("localhost","GET /user.php HTTP/1.0", '', ''); 
    echo $response['location']."<br>"; // 结果:error.php?errcode=2 
    // 可以访问user.php 
    $response = GetWebContent("localhost","GET /user.php HTTP/1.0", '', $response['sessid']); 
    echo $response['location']."<br>"; // 结果:user.php 
} 
?>
Ⅳ php读取html
preg_match('/<p align=\"center\"><big><strong>(.*?)<\/strong><\/big><\/p>/',$str,$result);
$str就是上面的html里面的内容,$result就是匹配到的字符串,你可以print_r($result);看看里面就有你要的结果,或者直接echo $result[1];就是
“在LINUX下配置MYSQL、PHP和JSP”这几个字符了
请采纳。
Ⅵ php怎么调用html
看来你并不了解PHP到底是什么?
PHP: Hypertext Preprocessor,中文名:“超文本预处理器”
你可能以为PHP 和HTML是两种不同的语言,
其实PHP只是嵌套HTML中的相当于脚本的语言,最终还是以HTML为核心.
假如把 HTML 比如一个鲜肉包, 你可能认为PHP 是面粉或者鲜肉 这种 原材料之一...
但其实 PHP 只是膨化机或者添加剂的角色...没有PHP的时代一样有HTML页面..
理解这层,再看这个问题就非常简单了:
<?php
functionindex(){
?><h>这是HTML</h><?php
}
?>
就是这么简单....因为PHP本身就是嵌套HTML中,所以以 ?>结束PHP之后就可以输出HTML,再要进行PHP代码 再以 <?php 开始.....
Ⅶ php读取html指定部分
<?php
$re='/<li title=([^:]*):([^<]*)<\/li>/';
$x_goods='<li title="货号">货号:252-26-002252</li>
<li title="性别">性别:女</li>
<li title="款式">款式:手拿包</li>
<li title="背包方式">背包方式:手抓</li>
<li title="背包部位">背包部位:手部</li>
<li title="质地">质地:牛皮</li>
<li title="提拎部件">提拎部件:锁链式提把</li>
<li title="内部结构">内部结构:拉链暗袋 夹层拉链袋
</li>
<li title="品牌">品牌:Tucano/意大利啄木鸟</li>
<li title="风格">风格:甜美淑女</li>
<li title="箱包外形">箱包外形:横款方形</li>
<li title="颜色">颜色:白色</li>
<li title="有无夹层">有无夹层:有</li>
<li title="有无拉杆">有无拉杆:无</li>
<li title="有无手腕带">有无手腕带:有</li>
<li title="价格区间">价格区间:101-500元</li>
<li title="成色">成色:全新</li>
';
if(preg_match_all($re,$x_goods,$matches)){
 print_r($matches[2]);
 //$daya=explode(' ',trim($matches[5][0]));
}
exit;
?>
Ⅷ php 如何获取一个.html文件里面的所有代码
你对着这个网页点右键,里面有查看源代码,就是TXT格式的,你考下来就行
不知道这样说对不对。。。路过
Ⅸ PHP中应该如何获取html代码中的信息
看示例:
-----a.htm---------:
<form action=b.php method=post>
<input type=text name=aaa>
<input type=submit value=提交>
</form>
-----b.php---------:
<?php
$aaa=$_POST["aaa"];
echo "$aaa";
?>
