Wat doe ik fout.
Op mijn website maak ik een backup van de tabellen. Deze mail ik naar mijzelf. Ik krijg dan een bestand dat ik kan openen met base64_decode.

echo base64_decode($str);

Alles staat nu achter elkaar zonder line feeds/breaks. Als ik de code in een van de websites zet die automatisch de code omzetten ziet het wel correct uit.
Ik wel echter graag in eigen beheer een bruikbaar bestand van mijn database maken.

Alvast bedankt.
Zolang de values maar de juiste newlines hebben is er niets mis met meerdere commando's op 1 regel.
Het kan door de browser komen, in de browser zie je alleen linebreaks met een <br>-tag bijvoorbeeld. Probeer eens om \n eens te vervangen door <br>
Dank voor de snelle reactie. Ik zie nog niet hoe ik het kan oplossen. Voor de duidelijk hierbij een stukje van de code.
Peter

Het bestand dat ik per mail ontvang ziet er zo uit;

DQojQ3JlYXRlIHRhYmxlIGFjdGllZg0KDQpDUkVBVEUgVEFCTEUgYGFjdGllZmAgKAogIGBhY3Rp
ZWZfaWRgIGludCgxKSBOT1QgTlVMTCwKICBgYWN0aWVmX29tc2AgdmFyY2hhcigxNSkgTk9UIE5V
TEwKKSBFTkdJTkU9SW5ub0RCIERFRkFVTFQgQ0hBUlNFVD1sYXRpbjE7DQoNCiNEdW1wIGRhdGEN
Cg0KSU5TRVJUIElOVE8gYWN0aWVmIFNFVCBhY3RpZWZfaWQ9JzAnLGFjdGllZl9vbXM9J25pZXQg
YWN0aWVmJzsNCklOU0VSVCBJTlRPIGFjdGllZiBTRVQgYWN0aWVmX2lkPScxJyxhY3RpZWZfb21z
PSdhY3RpZWYnOw0KDQojQ3JlYXRlIHRhYmxlIGJhY2t1cA0KDQpDUkVBVEUgVEFCTEUgYGJhY2t1
cGAgKAogIGBiYWNrdXBfaWRgIGludCgxMSkgTk9UIE5VTEwgQVVUT19JTkNSRU1FTlQsCiAgYGRh
dHVtX2xhc3RfYnVgIGRhdGUgTk9UIE5VTEwsCiAgYGRhdHVtX25leHRfYnVgIGRhdGUgTk9UIE5V

echo base64_decode($str) geeft:

#Create table actief CREATE TABLE `actief` ( `actief_id` int(1) NOT NULL, `actief_oms` varchar(15) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; #Dump data INSERT INTO actief SET actief_id='0',actief_oms='niet actief'; INSERT INTO actief SET actief_id='1',actief_oms='actief'; #Create table backup CREATE TABLE `backup` ( `backup_id` int(11) NOT NULL AUTO_INCREMENT, `datum_last_bu` date NOT NULL, `datum_next_bu` date NOT NULL, `klant_id` int(11) NOT NULL, `bu_name` varchar(60) NOT NULL, `bu_pad` varchar(60) NOT NULL, `bu_mail_to` varchar(60) NOT NULL, `datum` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`backup_id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; #Dump data INSERT INTO backup SET backup_id='1',datum_last_bu='2016-10-01',datum_next_bu='2016-10-04',klant_id='0',bu_name='backup.sql',bu_pad='../backup_my/',bu_mail_to='[email protected]',datum='0000-00-00 00:00:00'; #Create table bericht CREATE TABLE `bericht` ( `bericht_id` int(11) NOT NULL AUTO_INCREMENT, `datum_ontv` datetime DEFAULT NULL, `onderwerp` varchar(140) DEFAULT NULL, `bericht` text, `status` int(2) DEFAULT '1', `

Maar dit is de layout die ik graag wil;

#Create table actief

CREATE TABLE `actief` (
`actief_id` int(1) NOT NULL,
`actief_oms` varchar(15) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

#Dump data

INSERT INTO actief SET actief_id='0',actief_oms='niet actief';
INSERT INTO actief SET actief_id='1',actief_oms='actief';

#Create table backup

CREATE TABLE `backup` (
`backup_id` int(11) NOT NULL AUTO_INCREMENT,
`datum_last_bu` date NOT NULL,
`datum_next_bu` date NOT NULL,
`klant_id` int(11) NOT NULL,
`bu_name` varchar(60) NOT NULL,
`bu_pad` varchar(60) NOT NULL,

We doen even gek.

Ik goochel arrays altijd netjes met een HTML tag.
Probeer eens
echo "<pre>";
Er voor te gebruiken
Beste Koen,

Erg bedankt voor de oplossing. Ik ben lang aan het zoeken geweest en deze oplossing nergens gevonden.

Aanvullend ... <pre> dienen we ook netjes af te sluiten, dus:

<?php

echo '<pre>' . base64_decode($str) . '</pre>';

?>
We hebben ook nog een CSS-instelling waarmee we dit (netter) kunnen doen:

white-space: pre;

Reageren