2012-02-10 31 views
0

突然動作を停止したXML文書を生成するスクリプトがあります。XML解析エラー...要素が見つかりません

XML解析エラー:私はそれを実行すると、私はこのエラーを取得するどの要素が見つからない 場所:http://www.mydomain.com/indeed-general-xml/ 行番号1、列1:

ここでノード構造を生成するコードとループがあります:

header('Content-Type: text/xml'); 
    //create DOMDocument object and set char encoding 
    $doc = new DOMDocument('1.0','utf-8'); 
    $doc->formatOutput = true; 

    //root element 
    $r = $doc->createElement("source"); 
    //append root element to our document 
    $doc->appendChild($r); 

    $publisher = $doc->createElement("publisher"); 
    $publisher->appendChild($doc->createTextNode("mydomain.com")); 
    $r->appendChild($publisher); 

    $publisherurl = $doc->createElement("publisherurl"); 
    $publisherurl->appendChild($doc->createTextNode("http://mydomain.com")); 
    $r->appendChild($publisherurl); 

    $job = array(); 
    //set args for query 
    $args = array(
     'post_author' => -1, 
     'post_type' => 'job_listing', 
     'posts_per_page' => -1, 
     'post_status' => 'publish', 
     'orderby' => 'date', 
     'order' => 'DESC' 
     ); 
    //run query 
    $feed_jobs = new WP_Query($args);while($feed_jobs->have_posts()) : $feed_jobs->the_post(); 
    $b = $doc->createElement("job"); 

    //begin loop 
    (while $feed_jobs->have_posts()) : $feed_jobs->the_post(); 

    $title = $doc->createElement("title");  
    $title->appendChild($doc->createCDATASection($post->post_title)); 
    $b->appendChild($title); 

    $company_name = "Sample Company Name"; 
    $company = $doc->createElement("company"); 
    $company->appendChild($doc->createCDATASection($company_name)); 
    $b->appendChild($company); 

    $date = $doc->createElement("date"); 
    $date->appendChild($doc->createCDATASection($post->post_date)); 
    $b->appendChild($date); 

    $referencenumber = $doc->createElement("referencenumber"); 
    $referencenumber->appendChild($doc->createCDATASection($post->ID)); 
    $b->appendChild($referencenumber); 

    $url = $doc->createElement("url"); 
    $url->appendChild($doc->createCDATASection($post->guid)); 
    $b->appendChild($url); 

    $description = $doc->createElement("description"); 
    $description = createCDATASection($post->post_content); 
    $description->appendChild($description); 
    $b->appendChild($description); 

    //query postmeta table for city and state// then parse it into an array 
    $location = get_post_meta($post->ID,'geo_address',true); 
    $location = explode(',',$location); 

    $city = $doc->createElement("city"); 
    $city->appendChild($doc->createCDATASection($location[0])); 
    $b->appendChild($city); 

    $state = $doc->createElement("state"); 
    $state->appendChild($doc->createCDATASection($location[1])); 
    $b->appendChild($state); 

    $r->appendChild($b);  

endwhile; 

私は完璧に実行される同一のスクリプトを持っているため、これは私のヘッダーの空白行には問題がないと思います。違いは、ユーザーデータがデータベースから取得されたことだけです。クエリを交換すると、壊れたスクリプトは問題なく実行されます。

このエラーは私を夢中にしています。助けてくれて大変感謝しています。

編集:ここでは、私は

<source> 
    <publisher>mydomain.com</publisher> 
    <publisherurl>http://mydomain.com</publisherurl> 
    <job> 
     <company_name>ABC Company</company_name> 
     <date>3-4-2011 10:54</date> 
     <referencenumber>1234</referencenumber> 
     <url>http://www.mydomain.com/extension</url> 
     <description>Block of of content, likely ranging several thousand characters. HTML tags included, but should be sanitized by use of createCDATASection() method</description> 
     <city>Oakland</city> 
     <state>California</state> 
    </job> 
</source> 
+2

XML文書はどのように見えますか? –

+0

何が好きですか?私はあなたが何かを逃したと思う:) –

+0

はい、私は私のコメントを編集しようとしましたが、タイムアウトしました。申し訳ありませんが、ここでのコメントの書式設定は、うまく構造化されたxml文書の出力には役立ちません。コードを見ると、、<company>、<etc..>のツリー構造が表示されます。あなたがコードから見ることができない唯一のものは、適切に開閉されたルート<source>ノードです。 – <span class="text-secondary"> <small> <span></span> </small> </span> </p> </div> </div> </div> </div> </div> </article> </div> <div class="answer-title"> <span class="text-logo margin-top-sm">A</span> <h2 class="title h4">答えて</h2> </div> <div class="item-description text-md markdown-body margin-bottom-40 voidso"> <article class="board-top-1 padding-top-10"> <div class="post-col vote-info"> <span class="count">0<i class="fa fa-thumbs-up"></i></span> </div> <div class="post-offset"> <div class="answer fmt"> <pre><code class="prettyprint-override">$description = $doc->createElement("description"); $description = createCDATASection($post->post_content); $description->appendChild($description); </code></pre> <p>のために頼まれた意図された出力のサンプルです???</p> <p>自分自身に何かを追加することを意味しましたか?</p> </div> <div class="post-info"> <div class="post-meta row"> <p class="text-secondary col-lg-6"> <span class="source"> <a rel="noopener" target="_blank" href="https://stackoverflow.com/q/9235132">出典</a> </span> </p> <p class="text-secondary col-lg-6"> <span class="float-right date"> <span>2012-02-10 21:35:06</span> </p> <p class="col-12"></p> <p class="col-12"></p></div> </div> <!-- comments --> <div class="comments"> <div itemprop="comment" class="post-comment"> <div class="row"> <div class="col-lg-1"><span class="text-secondary">+0</span></div> <div class="col-lg-11"> <p class="commenttext">すべてが私のルートタグ<source>に追加されます。コードを編集して、DOMDocumentクラスを使ってどのように使用したかを示します。 <description>ノードについては、コードの次の行は$ b-> appendChild($ description)です。$ bは$ descriptionの親ノードです。 – <span class="text-secondary"> <small> <span></span> </small> </span> </p> </div> </div> </div> </div> </div> </article> <div> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-6208739752673518" data-ad-slot="1038284119" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> </div> <div class="clearfix"> </div> <div> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-6208739752673518" data-ad-slot="1575177025"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> <div class="padding-top-10"></div> </div> </div> <script type="text/javascript" src="http://img.uwenku.com/uwenku/script/side.js?t=1644592048742"></script> <script type="text/javascript" src="http://img.uwenku.com/uwenku/plugin/highlight/highlight.pack.js"></script> <link href="http://img.uwenku.com/uwenku/plugin/highlight/styles/docco.css" media="screen" rel="stylesheet" type="text/css" /> <script type="text/javascript"> $('pre').each(function(i, e) { hljs.highlightBlock(e, "<span class='indent'> </span>", false) }); </script> <div class="col-lg-3 col-md-4 col-sm-5"> <div id="rightTop"> <div class="row"> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-6208739752673518" data-ad-slot="5415218910" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> <div class="row sidebar panel panel-default"> <div class="panel-heading font-bold"> 最新の質問 </div> <div class="m-b-sm m-t-sm clearfix"> <ul class="side_article_list"> <li class="side_article_list_item"> 1. <a href="http://ja.uwenku.com/question/p-amlyfusf-nb.html" target="_blank" title="JavaのJTextField内のクリアテキスト"> JavaのJTextField内のクリアテキスト </a> </li> <li class="side_article_list_item"> 2. <a href="http://ja.uwenku.com/question/p-nqrfnpqj-mx.html" target="_blank" title="Acumatica処理画面ARTranカスタムフィールドを更新するカスタムテーブルフィールドも更新する必要があります"> Acumatica処理画面ARTranカスタムフィールドを更新するカスタムテーブルフィールドも更新する必要があります </a> </li> <li class="side_article_list_item"> 3. <a href="http://ja.uwenku.com/question/p-fymmufsj-mv.html" target="_blank" title="アクティブなサイドバーでコンテンツを中央に配置するにはどうすればいいですか?"> アクティブなサイドバーでコンテンツを中央に配置するにはどうすればいいですか? </a> </li> <li class="side_article_list_item"> 4. <a href="http://ja.uwenku.com/question/p-drkfxzpt-na.html" target="_blank" title="なぜデバッグモードで構造体の大きなベクトルの要素にアクセスするのが、より小さなものにアクセスするよりも遅いのですか?"> なぜデバッグモードで構造体の大きなベクトルの要素にアクセスするのが、より小さなものにアクセスするよりも遅いのですか? </a> </li> <li class="side_article_list_item"> 5. <a href="http://ja.uwenku.com/question/p-rpmueyef-my.html" target="_blank" title="「状態」のオブジェクトをreact reduxで更新するにはどうすればよいですか?私の減速で"> 「状態」のオブジェクトをreact reduxで更新するにはどうすればよいですか?私の減速で </a> </li> <li class="side_article_list_item"> 6. <a href="http://ja.uwenku.com/question/p-wpqjyvor-mp.html" target="_blank" title="WebElementには属性がありませんw3c"> WebElementには属性がありませんw3c </a> </li> <li class="side_article_list_item"> 7. <a href="http://ja.uwenku.com/question/p-nudbqkap-ma.html" target="_blank" title="iOS App Store提出時に住所が必要"> iOS App Store提出時に住所が必要 </a> </li> <li class="side_article_list_item"> 8. <a href="http://ja.uwenku.com/question/p-hweuamaj-mb.html" target="_blank" title="AlertDialogの助けを借りてカスタムアレイアダプタに新しいオブジェクトを追加"> AlertDialogの助けを借りてカスタムアレイアダプタに新しいオブジェクトを追加 </a> </li> <li class="side_article_list_item"> 9. <a href="http://ja.uwenku.com/question/p-glrxgqwd-me.html" target="_blank" title="私はRのカーネルで使用jupyterノートブックでJupyterノート"> 私はRのカーネルで使用jupyterノートブックでJupyterノート </a> </li> <li class="side_article_list_item"> 10. <a href="http://ja.uwenku.com/question/p-nnnzvmuj-md.html" target="_blank" title="プロップ名として反応コンポーネントに渡される画像を要求する方法はありますか?"> プロップ名として反応コンポーネントに渡される画像を要求する方法はありますか? </a> </li> </ul> </div> </div> </div> <p class="article-nav-bar"></p> <div class="row sidebar article-nav"> <div class="row box_white visible-sm visible-md visible-lg margin-zero"> <div class="top"> <h3 class="title"><i class="glyphicon glyphicon-th-list"></i> 関連する問題</h3> </div> <div class="article-relative-content"> <ul class="side_article_list"> <li class="side_article_list_item">関連する問題はありません^_^</li> </ul> </div> </div> </div> </div> </div> </div> </div><!-- wrap end--> <!-- footer --> <footer id="footer"> <div class="bg-simple lt"> <div class="container"> <div class="row padder-v m-t"> <div class="col-xs-8"> <ul class="list-inline"> <li><a href="http://ja.uwenku.com/contact">お問い合わせ</a></li> <li>© 2020 JA.UWENKU.COM</li> <li><a target="_blank" href="https://beian.miit.gov.cn/">沪ICP备13005482号-4</a></li> <li><script type="text/javascript" src="https://v1.cnzz.com/z_stat.php?id=1280101193&web_id=1280101193"></script></li> <li><a href="http://www.uwenku.com/" target="_blank" title="优文库">简体中文</a></li> <li><a href="http://hk.uwenku.com/" target="_blank" title="優文庫">繁體中文</a></li> <li><a href="http://ru.uwenku.com/" target="_blank" title="поле вопросов и ответов">Русский</a></li> <li><a href="http://de.uwenku.com/" target="_blank" title="Frage - und - antwort - Park">Deutsch</a></li> <li><a href="http://es.uwenku.com/" target="_blank" title="Preguntas y respuestas">Español</a></li> <li><a href="http://hi.uwenku.com/" target="_blank" title="कार्यक्रम प्रश्न और उत्तर पार्क">हिन्दी</a></li> <li><a href="http://it.uwenku.com/" target="_blank" title="IL Programma di chiedere Park">Italiano</a></li> <li><a href="http://ja.uwenku.com/" target="_blank" title="プログラム問答園区">日本語</a></li> <li><a href="http://ko.uwenku.com/" target="_blank" title="프로그램 문답 단지">한국어</a></li> <li><a href="http://pl.uwenku.com/" target="_blank" title="program o park">Polski</a></li> <li><a href="http://tr.uwenku.com/" target="_blank" title="Program soru ve cevap parkı">Türkçe</a></li> <li><a href="http://vi.uwenku.com/" target="_blank" title="Đáp ứng viên">Tiếng Việt</a></li> <li><a href="http://fr.uwenku.com/" target="_blank" title="Programme interrogation Park">Française</a></li> </ul> </div> </div> </div> </div> </div> </footer> <!-- / footer --> <script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?f78a970f17b19a79fc477a3378096f29"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> </body> </html>