Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: содержимое html странички в textarea
 
 автор: rautate   (22.11.2006 в 11:40)   письмо автору
 
 

Как можно загрузить содержимое любой html странички, только без тегов, чтоб остался чистый текст.
ЗЫ. мне надо для изменения содержимого, потом сохранения в том же файле.
Возможно это сделать?

   
 
 автор: Фитч   (25.11.2006 в 12:41)   письмо автору
 
   для: rautate   (22.11.2006 в 11:40)
 

Точно не на JS или HTML... Если загрузить, немного пошаманив, в textarea еще возможно, то сохранять надо через cgi/PHP и тп.

   
 
 автор: RMW   (27.11.2006 в 20:14)   письмо автору
 
   для: rautate   (22.11.2006 в 11:40)
 


<html>
<title>***</title>
<head>
<script>
var Obj={

Init: function(d,t,s)
{
  this.frameDoc = d;
  this.textArea = t;
  this.tagsName = s;
  this.a = [];
  this.i = 0;

  this.textArea.value='';
},

Start: function(x)
{
  this.a = [];
  this.i = 0;

  if(!x.value)return;

  this.searchText = new RegExp(x.value);
  with(this)
  {
    recurs(frameDoc.documentElement);
    alert('найдено '+a.length);
    if(a.length)
    {
      textArea.value=a[i].data;
      tagsName.innerHTML=(i+1)+'/ '+a[i].parentNode.tagName;
    }
  }
},

Replace: function()
{
  with(this)
  {
    var obj = frameDoc.createTextNode(textArea.value);
    if(a[i])
    {
      try
      {
        a[i].parentNode.replaceChild(obj,a[i]);
        a[i] = obj;
      }catch(e){}
    }
  }
},

Back: function()
{  
  with(this)
  {
    if(i<=0){tagsName.innerHTML='&gt;&gt;&gt;';return;}
    textArea.value = a[--i].data;
    tagsName.innerHTML = (i+1)+'/ '+a[i].parentNode.tagName;
  }
},

Forward: function()
{
  with(this)
  {
    if(i>=a.length-1){tagsName.innerHTML='&lt;&lt;&lt;';return;}
    textArea.value = a[++i].data;
    tagsName.innerHTML = (i+1)+'/ '+a[i].parentNode.tagName;
  }
},

Submit: function(formObj)
{
  formObj.elements['pageUrl'].value = this.frameDoc.location.href;
  formObj.elements['pageSource'].value = '<html>'+this.frameDoc.documentElement.innerHTML+'</html>';

  formObj.submit();
},

recurs: function(obj)
{
  with(obj)
  {
    var parent = parentNode.nodeName;
    if(nodeType == 3 && parent != 'STYLE' && parent != 'SCRIPT' && parent != 'NOSCRIPT')
    {
      var text = obj.data;
      if(/\S/.test(text) && this.searchText.test(text))this.a.push(obj);
    }
    if(firstChild)this.recurs(firstChild);
    if(nextSibling)this.recurs(nextSibling);
  }
}

}
</script>
</head>
<body>
<iframe src="about:blank" width="100%" height="200px" onload="Obj.Init(frames[0].document,document.forms[0].elements[2],document.getElementById('tagName'))"></iframe>
<span id="tagName">...</span><br>
<form>
<!0><input type="button" value="get textNode with..." onclick="Obj.Start(this.form.elements[1])">
<!1><input type="text"><br>
<!2><textarea cols="70" rows="5"></textarea><br>
<!3><input type="button" value="open from url:" onclick="frames[0].location.replace(this.form.elements[4].value)">
<!4><input type="text">
<!5><input type="button" value="Replace" onclick="Obj.Replace()">
<!6><input type="button" value="<<<" onclick="Obj.Back()">
<!7><input type="button" value=">>>" onclick="Obj.Forward()">
<!8><input type="button" value="Submit" onclick="Obj.Submit(document.forms[1])">
</form>
<form action=".../my.php" method="post" enctype="text/plain">
<input type="hidden" name="pageUrl">
<input type="hidden" name="pageSource">
</form>
</body>
</html>

   
 
 автор: _Dreamer_   (27.11.2006 в 20:22)   письмо автору
 
   для: rautate   (22.11.2006 в 11:40)
 


    // функция на PHP -- возвращает html код странички
    function getHtmlCodeFromUrl($url)
    {
        ob_start();
        include($url);
        $str = ob_get_contents();
        ob_end_clean();
        return $str;
    }

а дальше можно воспользоваться striptags(), но она не вычистит все теги, поэтому поищите что нибудь на 100% действующее или сделайте свое регулярное выражение

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования