Hallo,
ik ben bezig met een scriptgenerator in php, hier een stuk van het script:

$textToAdd = "EXTRA TEKST";
$File = "$hits.user.js"; 
$Handle = fopen($File, 'w');
$Data = '

// ==UserScript==
// @name            Grepolis Shortcut DE,EN,NL, $textToAdd
// @description     Grepolis Shortcut in DE,EN and NL
// @namespace       Doc Marco & die PC-Helfer <http://www.sdm-scholz.de>, edit by Plantjen
// @include         http://*.grepolis.*
// ==/UserScript==
var translate = {
	de: {
		main: "Senat",
		barracks: "Kaserne",
		academy: "Akademie",
		docks: "Hafen",
		market: "Marktplatz",
		wall: "Mauer",
		place: "Agora",
		temple: "Tempel"
	},
	en: {
		main: "Senate",
		barracks: "Barracks",
		academy: "Academy",
		docks: "Harbour",
		market: "Market",
		wall: "Wall",
		place: "Agora",
		temple: "Temple"
	},
	nl: {
		main: "Senaat",
		barracks: "Kazerne",
		academy: "Academie",
		docks: "Haven",
		market: "Markt",
		wall: "Muur",
		place: "Agora",
		temple: "Tempel"
	}
};
for (lang in translate) {
	if (window.location.href.indexOf("http://"+lang) == 0 || window.location.href.indexOf("https://"+lang) == 0) {
		break;
	}
}
html_insert_it(window.document,document.getElementById('header'),'<ul class="toolbar"><li><a href="/game/building_main">'+translate[lang].main+'</a></li><li><a href="/game/building_barracks">'+translate[lang].barracks+'</a></li><li><a href="/game/building_academy">'+translate[lang].academy+'</a></li><li><a href="/game/building_docks">'+translate[lang].docks+'</a></li><li><a href="/game/building_market">'+translate[lang].market+'</a></li><li><a href="/game/building_wall">'+translate[lang].wall+'</a></li><li><a href="/game/building_place">'+translate[lang].place+'</a></li><li><a href="http://de1.grepolis.com/game/building_temple">'+translate[lang].temple+'</a></li></ul><ul id="town_name" style="position:absolute; top:0px; left:0px; width:0px; height:0px; z-index:2;"><li><a href="http://www.sdm-scholz.de"><img src="http://de1.grepolis.com/images/game/forum/new_post.png" alt="Doc Marco"></a></li></ul>',false,false);
//EN HET SCRIPT GAAT HIER NOG VERDER
'; 
fwrite($Handle, $Data); 
fclose($Handle); 
}


Nu wil ik dit script schrijven naar $hits.user.js, maar door de hoge komma's in het script dat ik wil schrijven werkt hij niet, heeft iemand een oplossing?
Verder heb ik ook het idee dat er een betere manier is voor zo'n script generator...

Alvast bedankt,
Plantjen
ff de code tags om heen
Ik zou zoiets doen:
<?php
$text2add = 'blablabla';
$outputfile = preg_replace('/[^a-z0-9]+/i', '', $outputfile);//verwijder alle tekens behalve letters en cijfers
if($outputfile == ''){//geen lege naam
$outputfile = 'script';
}
$outputfile .= '.user.js';
if(file_exists($outputfile)){
//ligt eraan of je het erg vind dat het bestand wordt overschreden of niet
//die('Het bestand bestaat al');
}
$data = @file_get_contents('script.txt');//Zoveel data kun je beter in een gescheiden bestand houden
if(!$data){//geen data? dan houd het op
die('Geen script beschikbaar');
}
//even onze 'extra tekst' toevoegen
$data = str_replace('$text2add', $text2add, $data);

$fh = @fopen($outputfile, 'w');
if(!$fh){//sht, we kunnen het bestand niet maken....
die('Bestand kon niet geschreven worden');
}
fwrite($fh, $data);
fclose($fh);
?>

Je kunt beter gewoon het script echo-en, jouw server kan volgespamt worden als je dit zonder captcha of zo doet...
maar ik zie in jou script ook geen captcha.
yorick17 schreef op 06.02.2010 14:49
maar ik zie in jou script ook geen captcha.


Klopt, ik verbeterde zijn script enkel.
Ik heb het niet zo op bestanden aanmaken met een naam die de gebruiker kiest.
Zo raakt je webruimte heel snel vol.

ja ik ook niet, want het is ook niet veilig
wat dacht je van backslashes toevoegen?

Reageren