• Hallo Besucher!

    Du bist neu im Forum? Dann registriere dich hier, um Diskussionen beizutreten oder eigene Themen zu erstellen. Für die Registrierung ist es erforderlich, dass du einen Spielaccount bei Die Stämme hast.

    Andernfalls kannst du dich hier direkt einloggen.

    Falls du dein Passwort vergessen hast, kannst du hier ein neues Passwort anfordern.

rangliste

DeletedUser

Gast
also ich habs doch in eine andere datei eingefügt, sonst wird das immer beim besuchen der seite ausgeführt... das sieht dann so aus:
PHP:
<html>
<body>
Wenn du hier bist, bist du falsch abgebogen...<br>
<?
$lines = gzfile('/forum/input/ally.txt');
if(!is_array($lines)) die("Datei konnte nicht geöffnet werden"); 
foreach($lines as $line) {
	list($id, $name, $tag, $members, $villages, $points, $all_points, $rank) = explode(',', $line);
	$name = urldecode($name);

	$name = addslashes($name);
	mysql_query("INSERT INTO village SET id='$id', name='$name', x='$x', y='$y', 
		player='$player', points='$points', rank='$rank'");
}
$lines = gzfile('/forum/input/village.txt');
if(!is_array($lines)) die("Datei konnte nicht geöffnet werden"); 
foreach($lines as $line) {
	list($id, $name,$x, $y, $player, $points, $rank) = explode(',', $line);
	$name = urldecode($name);

	$name = addslashes($name);
	mysql_query("INSERT INTO village SET id='$id', name='$name', x='$x', y='$y', 
		player='$player', points='$points', rank='$rank'");
}
$lines = gzfile('/forum/input/player.txt');
if(!is_array($lines)) die("Datei konnte nicht geöffnet werden"); 
foreach($lines as $line) {
	list($id, $name, $ally, $villages, $points, $rank) = explode(',', $line);
	$name = urldecode($name);

	$name = addslashes($name);
	mysql_query("INSERT INTO village SET id='$id', name='$name', x='$x', y='$y', 
		player='$player', points='$points', rank='$rank'");
}
?>
</body>
</html>

und welchen/was für einen cronjob-code?
 
Zuletzt bearbeitet von einem Moderator:

TimLim

Gast
das was du gepostet hast, meine ich

iwie kann das doch nicht funzen. du benutzt eine Funktion für gz files, nimmst aber txt :s

und sicher, dass alles zur village datenbank soll?
 

DeletedUser

Gast
also die db - sollte in player, oder was liest er aus? brauche ich die anderen dann eig oder nur die player.txt?
 

DeletedUser

Gast
gut dann muss ich noch wissen, wie ich die tabelle, in die importiert wird, definiere...

der code bisher:
PHP:
<html>
<body>
Wenn du hier bist, bist du falsch abgebogen...<br>
<?
$lines = gzfile('/forum/input/kill_all.txt.gz');
if(!is_array($lines)) die("Datei konnte nicht geöffnet werden"); 
foreach($lines as $line) {
	list($id, $name,$x, $y, $player, $points, $rank) = explode(',', $line);
	$name = urldecode($name);

	$name = addslashes($name);
	mysql_query("INSERT INTO village SET id='$id', name='$name', x='$x', y='$y', 
		player='$player', points='$points', rank='$rank'");
}
$lines = gzfile('http://de42.die-staemme.de/map/player.txt.gz');
if(!is_array($lines)) die("Datei konnte nicht geöffnet werden"); 
foreach($lines as $line) {
	list($id, $name, $ally, $villages, $points, $rank) = explode(',', $line);
	$name = urldecode($name);

	$name = addslashes($name);
	mysql_query("INSERT INTO village SET id='$id', name='$name', x='$x', y='$y', 
		player='$player', points='$points', rank='$rank'");
}
?>
</body>
</html>
ich habe die player.txt.gz leider nicht auf'm server, die liest die forumssoftware nicht ein.
 
Zuletzt bearbeitet von einem Moderator:

TimLim

Gast
PHP:
<html>
<body>
Wenn du hier bist, bist du falsch abgebogen...<br>
<?
$lines = gzfile('http://de42.die-staemme.de/map/player.txt.gz');
mysql_query("TRUNCATE TABLE player") or die(mysql_error());
if(!is_array($lines)) die("Datei konnte nicht geöffnet werden"); 
foreach($lines as $line) {
	list($id, $name, $ally, $villages, $points, $rank) = explode(',', $line);
	$name = urldecode($name);

	$name = addslashes($name);
	mysql_query("INSERT INTO player (id, name, ally, villages, points, rank) VALUES ('$id', '$name', '$ally', '$villages', '$points', '$rank')");
}
$lines = gzfile('http://de42.die-staemme.de/map/kill_all.txt.gz');
mysql_query("TRUNCATE TABLE kill_all") or die(mysql_error());
if(!is_array($lines)) die("Datei konnte nicht geöffnet werden"); 
foreach($lines as $line) {
	list($rank, $id, $kills) = explode(',', $line);

	mysql_query("INSERT INTO kill_all (rank, id, kills) VALUES ('$rank', '$id', '$kills')");
}
?>
</body>
</html>
 
Zuletzt bearbeitet:

DeletedUser

Gast
was soll mir das sagen? das is so ähnlich wie mein code... nur i-wie mit villages statt kill_all-...
 

TimLim

Gast
sry, war beim falschen thema.
habs editiert
oben muss noch connect hin
 

DeletedUser

Gast
Fatal error: Allowed memory size of 25165824 bytes exhausted (tried to allocate 71 bytes) in /data/apache/users/kilu.de/w42low/www/einlesen.php on line 16 <- bitte sag mir jetzt nicht, dass ich zu wenig speicher hab...
 

TimLim

Gast
pack mal "set_time_limit(999999);" an den Anfang der Datei

Du solltest ebenfalls vorher die Tabelle anlegen...
 

TimLim

Gast
dann mach eben

set_time_limit(9999999999999999999999999999999999999);

sollte gehen :D

\e: ******e, war beim falschen Fehler
\e²: aber lass es ruhig an den Anfang, wird später wieder ein prob ohne geben

pack auch noch an den Anfang

ini_set(”memory_limit”,”350M”);
 
Zuletzt bearbeitet:

DeletedUser

Gast
gut, ich erlaube dir in diesem thread den doppelpost^^ spaß beiseite, habs eingefügt, den ersten absatz macht er nu, aber den 2. also die 2. datei nicht...
 

TimLim

Gast
PHP:
<html>
<body>
Wenn du hier bist, bist du falsch abgebogen...<br>
<?
$lines = gzfile('http://de42.die-staemme.de/map/player.txt.gz');
mysql_query("TRUNCATE TABLE player") or die(mysql_error());
if(!is_array($lines)) die("Datei konnte nicht geöffnet werden"); 
foreach($lines as $line) {
	list($id, $name, $ally, $villages, $points, $rank) = explode(',', $line);
	$name = urldecode($name);

	$name = addslashes($name);
	mysql_query("INSERT INTO player (id, name, ally, villages, points, rank) VALUES ('$id', '$name', '$ally', '$villages', '$points', '$rank')") or die(mysql_error());
}
$lines = gzfile('http://de42.die-staemme.de/map/kill_all.txt.gz');
mysql_query("TRUNCATE TABLE kill_all") or die(mysql_error());
if(!is_array($lines)) die("Datei konnte nicht geöffnet werden"); 
foreach($lines as $line) {
	list($rank, $id, $kills) = explode(',', $line);

	mysql_query("INSERT INTO kill_all (rank, id, kills) VALUES ('$rank', '$id', '$kills')") or die(mysql_error());
}
?>
</body>
</html>

\e: immernoch die player tabelle anlegen...
 

DeletedUser

Gast
zeile 18, in der datei also:

PHP:
$lines = gzfile('http://de42.die-staemme.de/map/kill_all.txt.gz');
 

DeletedUser

Gast
habs eingefügt, den ersten absatz macht er nu, aber den 2. also die 2. datei nicht... <- darauf bezieht sich die sache mit zeile 18
 

DeletedUser

Gast
es werden 2 dateien ausgelesen. die erste (player.txt.gz) macht er (mittlerweile) ohne faxen. die 2. (kill_all.txt.gz) macht er nicht.

die fehlermeldung:
Fatal error: Allowed memory size of 25165824 bytes exhausted (tried to allocate 24 bytes) in /data/apache/users/kilu.de/w42low/www/einlesen.php on line 18

Zeile 18:
PHP:
$lines = gzfile('http://de42.die-staemme.de/map/kill_all.txt.gz');

jetzt verständlich?
 
Oben