base64_decode
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>
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,
Ik goochel arrays altijd netjes met een HTML tag.
Probeer eens
echo "<pre>";
Er voor te gebruiken
Erg bedankt voor de oplossing. Ik ben lang aan het zoeken geweest en deze oplossing nergens gevonden.
We hebben ook nog een CSS-instelling waarmee we dit (netter) kunnen doen:
white-space: pre;