Ik ben er nog steeds niet uit.
Is er niemand die mij op het goede spoor kan zetten?
Link gekopieerd
?
Onbekende gebruiker
08-04-2011 09:01
Het kan aan de instellingen liggen.
Wat voor troep komt erbij?
Hoe maak je die xml aan?
Link gekopieerd
Dit is de HTML 'troep' die door het script gemaakt wordt. Nogmaals: vanuit mijn mac krijg ik wel het schone, bruikbare xml bestand. Windows gooit roet in het eten!
<br />
<font size='1'><table class='xdebug-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Notice: Undefined variable: out in C:\wamp\www\cursisten\mysql2xml.php on line <i>5</i></th></tr>
<tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>
<tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>
<tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0007</td><td bgcolor='#eeeeec' align='right'>365576</td><td bgcolor='#eeeeec'>{main}( )</td><td title='C:\wamp\www\cursisten\connectforexport.php' bgcolor='#eeeeec'>..\connectforexport.php<b>:</b>0</td></tr>
<tr><td bgcolor='#eeeeec' align='center'>2</td><td bgcolor='#eeeeec' align='center'>0.0295</td><td bgcolor='#eeeeec' align='right'>439896</td><td bgcolor='#eeeeec'>require( <font color='#00bb00'>'C:\wamp\www\cursisten\mysql2xml.php'</font> )</td><td title='C:\wamp\www\cursisten\connectforexport.php' bgcolor='#eeeeec'>..\connectforexport.php<b>:</b>9</td></tr>
</table></font>
<br />
<font size='1'><table class='xdebug-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Notice: Undefined index: tussenvoegsel in C:\wamp\www\cursisten\mysql2xml.php on line <i>38</i></th></tr>
<tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>
<tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>
<tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0007</td><td bgcolor='#eeeeec' align='right'>365576</td><td bgcolor='#eeeeec'>{main}( )</td><td title='C:\wamp\www\cursisten\connectforexport.php' bgcolor='#eeeeec'>..\connectforexport.php<b>:</b>0</td></tr>
<tr><td bgcolor='#eeeeec' align='center'>2</td><td bgcolor='#eeeeec' align='center'>0.0301</td><td bgcolor='#eeeeec' align='right'>435592</td><td bgcolor='#eeeeec'>exportMysql2XML( )</td><td title='C:\wamp\www\cursisten\connectforexport.php' bgcolor='#eeeeec'>..\connectforexport.php<b>:</b>15</td></tr>
</table></font>
<br />
<font size='1'><table class='xdebug-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Notice: Undefined index: jaarcursus in C:\wamp\www\cursisten\mysql2xml.php on line <i>51</i></th></tr>
<tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>
<tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>
<tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0007</td><td bgcolor='#eeeeec' align='right'>365576</td><td bgcolor='#eeeeec'>{main}( )</td><td title='C:\wamp\www\cursisten\connectforexport.php' bgcolor='#eeeeec'>..\connectforexport.php<b>:</b>0</td></tr>
<tr><td bgcolor='#eeeeec' align='center'>2</td><td bgcolor='#eeeeec' align='center'>0.0301</td><td bgcolor='#eeeeec' align='right'>435592</td><td bgcolor='#eeeeec'>exportMysql2XML( )</td><td title='C:\wamp\www\cursisten\connectforexport.php' bgcolor='#eeeeec'>..\connectforexport.php<b>:</b>15</td></tr>
</table></font>
Hieronder het script dat het xml bestand maakt:
<?php
header("Expires: 0");
header("Cache-control: private");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Length: " . strlen($out));
header("Content-Description: File Transfer");
// Output to browser with appropriate mime type, you choose ;)
header("Content-type: text/xml");
//header("Content-type: text/x-xml");
//header("Content-Type: application/vnd.ms-excel");
header("Content-disposition: attachment; filename=export.xml");
function exportMysql2XML($table,$filename = 'export.xml')
{ //function start
// Step 1
$sql = "SELECT * FROM cursisten WHERE status='nieuw' ";
$result = mysql_query($sql) or die ( mysql_error() );
$xml_output = "<?xml version=\"1.0\" encoding=\"UTF-16\" standalone=\"yes\"?>\n";
$xml_output .= "<DataList>";
$xml_output .= "<WebRegistrationList>";
$xml_output .= "<TableID>" . "11064476" . "</TableID>";
$xml_output .= "<FormID>" . "0" . "</FormID>";
while ($row = mysql_fetch_assoc($result) )
{
$code = $row['muziekkortcode'];
$code.= $row['danscode'];
$code.= $row['beeldendcode'];
$code.= $row['mediacode'];
$code.= $row['theatercode'];
$xml_output .= "\n"; //zet elke 'row' op een nieuwe regel
$xml_output .= "<WebRegistration>";
$xml_output .= "<No>" . $row['id'] . "</No>";
$xml_output .= "<ContNo>" . "</ContNo>";
$xml_output .= "<ContFirstName>" . $row['voornaam'] . "</ContFirstName>";
$xml_output .= "<ContName>" . $row['achternaam'] . "</ContName>";
$xml_output .= "<ContMiddleName>" . $row['tussenvoegsel'] . "</ContMiddleName>";
$xml_output .= "</WebRegistration>";
}
$xml_output .= "\n";
$xml_output .= "</WebRegistrationList>";
$xml_output .= "</DataList>";
//Zet het veld status op 'oud'
mysql_query("UPDATE Cursisten SET Status = 'oud' " );
echo $xml_output;
exit;
} //function end
?>
De in dit script gedefinieerde functie wordt aangeroepen via een ander script.
Link gekopieerd
?
Onbekende gebruiker
09-04-2011 09:40
Gebruik [php]simplexml[/php] of [php]dom[/php].
Link gekopieerd
.. of [php]XMLWriter[/php]
Maar je krijgt niet zomaar HTML, maar foutmeldingen. Of eigenlijk notices. Ongeacht hoe je je XML gaat genereren, die notices oplossen kan geen kwaad:
Notice: Undefined variable: out in C:\wamp\www\cursisten\mysql2xml.php on line 5
Notice: Undefined index: jaarcursus in C:\wamp\www\cursisten\mysql2xml.php on line 51
Notice: Undefined index: tussenvoegsel in C:\wamp\www\cursisten\mysql2xml.php on line 38
Link gekopieerd
Die foutmeldingen (notices) krijg ik niet vanuit de mac-omgeving. Hoe kan dat dan?
Link gekopieerd
Niels K
09-04-2011 14:34
gewijzigd op 09-04-2011 15:22
Daar worden waarschijnlijk de fouten onderdrukt. (Wat overigens niet de bedoeling is)
Toevoeging:
Wanneer je dit stukje code bovenaan het script zet moet je ze op mac hoogstwaarschijnlijk ook krijgen.
<?php
error_reporting( E_ALL );
ini_set( 'display_errors', 1 );
Link gekopieerd
?
Onbekende gebruiker
09-04-2011 15:18
Niels Kieviet op 09/04/2011 14:34:23
(...)
<?php
error_reporting( E_ALL );
ini_set( 'display_errors', '1' );
Sorry hoor, maar dit toont wel hoe slecht jou kennis van php is. Waarvoor zou je een integer tussen quotes doen?
Link gekopieerd
Sorry hoor, maar dit toont wel hoe slecht jou kennis van php is
Dank u voor het compliment... Ik had het gekopieerd van een site en het niet gezien..
Aangepast .., tevreden?
Link gekopieerd
Dank mensen voor het meedenken en aandragen van oplossingen. De bewuste error code heb ik toegevoegd en inderdaad, op mijn mac verschijnen ook de notices.
Link gekopieerd