login  Naam:   Wachtwoord: 
Registreer je!
 Forum

While Loop in txt bestand krijgen

Offline erm - 29/08/2006 16:21 (laatste wijziging 29/08/2006 16:21)
Avatar van ermLid Hallo mensen:).


Ik heb een scriptje gebouwd dat automatisch XML genereerd uit een DB. Maar nu kamp ik met een probleem, de xml bestanden zijn soms heel lang en daardoor kan het best wel lang duren voordat de pagina geladen word.

Ik zou graag willen dat na het uitvoeren van de loop de output in een txt bestand komt, of als dat niet komt dat er staat page loading.

  1. <?php
  2.  
  3.  
  4.  
  5. ## 1 = Textlink
  6. ## 2 = Flash
  7. ##3 = IMG
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14. // ALS DE FORM GESUBMIT IS DAN VOER JE CODE UIT
  15. if($_POST['Submit']) {
  16.  
  17. // CHECK INGEVULDE VELDEN ANDERS FOUTMELDING
  18. if(!$_POST['id']) {
  19. echo "<script languge='javascript'> alert('Vul AUB ProgrammaID in!');</script>";
  20. }
  21.  
  22. // begin van de script wat niet herhaald wordt
  23. $begin = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
  24. <adFeed adFeedVersion=\"1.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"adfeeds1.xsd\">
  25. <program programId=\"".$_POST['id']."\">";
  26.  
  27. // dit stukje output de begin en geeft kleur!
  28. echo $begin;
  29.  
  30.  
  31.  
  32.  
  33.  
  34. ## QUERY 1 TEXTLINKS!
  35.  
  36.  
  37.  
  38. // NU CHECKEN WE DE SOORT BANNER ANDERS FOUTMELDING 1ST TEXTLINKS
  39. $query1 = mysql_query("SELECT * FROM text WHERE soort = '1'") or die("Textlink query werkt niet");
  40. while($record1 = mysql_fetch_assoc($query1)) {
  41.  
  42. $string = "\n<text geId=\"\" geDelete=\"no\">
  43. <generalSettings>
  44. <title><![CDATA[".$record1['title']."]]></title>
  45. <productUrl><![CDATA[".$record1['producturl']."]]></productUrl>
  46. <productDescription><![CDATA[".$record1['description']."]]></productDescription>
  47. <categories>
  48. <category>
  49. <categoryId>".$record1['catid']."</categoryId>
  50. </category>
  51. </categories>
  52. <segments>
  53. <segment>
  54. <segmentId>".$record1['segementid']."</segmentId>
  55. </segment>
  56. </segments>
  57. <keywords>
  58. <keyword><![CDATA[".$record1['title']."]]></keyword>
  59. </keywords>
  60. </generalSettings>
  61. <textLink><![CDATA[".$record1['textlink']."]]></textLink>
  62. </text>";
  63. echo highlight_string($string,"end");
  64. }
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ## QUERY 2 FLASH BANNERS
  71.  
  72.  
  73.  
  74.  
  75.  
  76. // DE 2DE FLASH
  77. $query2 = mysql_query("SELECT * FROM text WHERE soort = '2'") or die("Flash query werkt niet");
  78. while($record2 = mysql_fetch_assoc($query2)) {
  79.  
  80.  
  81.  
  82. // andere xml feed! VAN FLASH!!
  83. $string1 = "\n<flash geId=\" geDelete=\"no\">
  84. <generalSettings>
  85. <title><![CDATA[".$record2['title']."]]></title>
  86. <productUrl><![CDATA[".$record2['producturl']."]]></productUrl>
  87. <productDescription><![CDATA[".$record2['description']."]]></productDescription>
  88. <categories>
  89. <category>
  90. <categoryId>".$record2['catid']."</categoryId>
  91. </category>
  92. </categories>
  93. <segments>
  94. <segment>
  95. <segmentId>".$record2['segementid']."</segmentId>
  96. </segment>
  97. </segments>
  98. </generalSettings>
  99. <flashVersion>".$record2['flashversion']."</flashVersion>
  100. <flashWidth>".$record2['width']."</flashWidth>
  101. <flashHeight>".$record2['height']."</flashHeight>
  102. <flashUrl>".$record2['flashurl']."</flashUrl>
  103. <flashBackupUrl>".$record2['flashbackup']."</flashBackupUrl>
  104. <flashWindowMode>Window</flashWindowMode>
  105. <flashSupportsPopunder>yes</flashSupportsPopunder>
  106. <flashSupportsPopup>yes</flashSupportsPopup>
  107. <flashSupportsIframe>yes</flashSupportsIframe>
  108. <flashSupportsJavascript>yes</flashSupportsJavascript>
  109. <flashDynamic>no</flashDynamic>
  110. </flash>";
  111. echo highlight_string($string1,"end");
  112. }
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122. ## QUERY 3 IMAGE BANNERS
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129. // NU CHECKEN WE DE SOORT BANNER ANDERS FOUTMELDING
  130. $query3 = mysql_query("SELECT * FROM text WHERE soort = '3'") or die("IMG query werkt niet");
  131. while($record3 = mysql_fetch_assoc($query3)) {
  132.  
  133.  
  134.  
  135. // VERVOLGENS DE XML FEED VAN IMG
  136. $string2 = "\n<image geId=\"\" geDelete=\"no\">
  137. <generalSettings>
  138. <title><![CDATA[".$record3['title']."]]></title>
  139. <productUrl><![CDATA[".$record3['producturl']."]]></productUrl>
  140. <productDescription><![CDATA[".$record3['description']."]]></productDescription>
  141. <categories>
  142. <category>
  143. <categoryId>".$record3['catid']."</categoryId>
  144. </category>
  145. </categories>
  146. <segments>
  147. <segment>
  148. <segmentId>".$record3['segementid']."</segmentId>
  149. </segment>
  150. </segments>
  151. <keywords>
  152. <keyword><![CDATA[".$record3['title']."]]></keyword>
  153. </keywords>
  154. </generalSettings>
  155. <imageWidth>".$record3['width']."</imageWidth>
  156. <imageHeight>".$record3['height']."</imageHeight>
  157. <imageUrl>".$record3['imageurl']."</imageUrl>
  158. <imageSupportsPopunder>yes</imageSupportsPopunder>
  159. <imageSupportsPopup>yes</imageSupportsPopup>
  160. <imageSupportsIframe>yes</imageSupportsIframe>
  161. <imageSupportsJavascript>yes</imageSupportsJavascript>
  162. </image>";
  163. echo highlight_string($string2,"end");
  164. }
  165.  
  166.  
  167.  
  168.  
  169.  
  170. }
  171.  
  172. // end script
  173. ?>



Alvast bedankt voor jullie hulp!!!!!

3 antwoorden

Gesponsorde links
Offline Rik - 29/08/2006 16:52 (laatste wijziging 29/08/2006 16:53)
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Hier en daar staat 'echo highlight_string($string2,"end");'

Dus dat wil je allemaal in een bestand hebben?

Dan zet je alles in een array, zoiets:
  1. $voorinhetbestand = array();
  2. ...
  3. $voorinhetbestand = highlight_string($string1, true);
  4. ...
  5. $voorinhetbestand = highlight_string($string2, true);
  6. $voorinhetbestand = implode('', $voorinhetbestand)

Bedoel je het zo?

Edit:
Die 2e parameter die je meegeeft bij highlight_string() ("end"), wat heeft die voor nut?
Offline erm - 29/08/2006 16:56
Avatar van erm Lid Ja maar komt het dan in een tekst bestand te staan de output?

Hoe ziet de code er dan vervolgens uit te zien? Daar zit ik namelijk vast.

Die end bij highligth_string was voor ASP maar die haal ik wel weg!

In ieder geval hartstikke bedankt voor je hulp!
Offline Rik - 29/08/2006 17:00
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Nee, de data staat dan alleen in $voorinhetbestand.

Als je host php5 heeft kan je zoiets gebruiken:
  1. file_put_contents('mijnxmlbestand.xml', $voorinhetbestand);


En in php4 of lager:
  1. $fopen = fopen('mijnxmlbestand.xml', 'w');
  2. fwrite($fopen, $voorinhetbestand);
  3. fclose($fopen);
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.244s