problem beim öffnen einer datei

spikaner

Quereinsteiger @ php
Habe ein Problem mit den öffnen einer Datei da ich das so gut wie nie brauche hab ich mich noch nicht näher damit beschäftigt.

Erwartet wird folgendes, Datei wird geöffnet Zeile für Zeile in ein array geschrieben und danach das array gemischt, mein Ansatz war folgender
PHP:
<?php
$liste = "namen.txt";
if (file_exists($liste))
{
     $handle = fopen($liste, "r");
     $contents = '';
     $i = 0;
     while (!feof($handle)) 
     {
         $line = fgets($handle);
         $liste[$i] = $handle; 
         $++;
     }
     fclose($handle);
}
$rand_liste = array_rand($liste[0],$[i]);
$i = 0;
while ()
{
    echo $liste[$i]"<br>";
    echo $rand_liste[$i]"<br>";
    $i++
}
?>
bekomme aber nur Parse error: syntax error, unexpected T_INC, expecting T_VARIABLE or '$' in D:\xampp\htdocs\browsergame\planetenerstellung.php on line 12, woran liegts ?

mfg Spikaner
 
Hi,

daran:
PHP:
$liste[$i] = $handle; 
$++;

ändere es einfach in
PHP:
$liste[] = $line;

Gruß
 
Zuletzt bearbeitet:
Parse error: syntax error, unexpected T_INC, expecting T_VARIABLE or '$' in D:\xampp\htdocs\browsergame\planetenerstellung.php on line 12

Fehlermeldung nachwievor die selbe.

mfg
 
PHP:
$liste = "namen.txt"; 
if(file_exists($liste)) {
	$liste = file($liste);
	$liste = array_rand($liste);
	foreach( $liste as $zeile ) {
		echo $zeile."<br>";
	}
}
 
Code:
<?php
$liste = "namen.txt";
if (file_exists($liste))
{
     $liste = file($liste); // statt 10 Zeilen eine Zeile
     
     // diese Code soll auch in obigem IF sein
     $rand_liste = array_rand($liste);
     for ($i=0;$i<count($liste);$i++) // kein while()
     {
         echo $liste[$i]"<br>";
         echo $rand_liste[$i]"<br>";
     }
}
?>
 
Zuletzt bearbeitet:
habe beide methoden probiert aber wder datei als ANSI oder UTF-8 hilft weiter
Gumbos Lösung: Warning: Invalid argument supplied for foreach() in D:\xampp\htdocs\browsergame\planetenerstellung.php on line 6
 
PHP:
$liste = "namen.txt";
if(file_exists($liste)) {
	$liste = file($liste);
	shuffle($liste);
	foreach( $liste as $zeile ) {
		echo $zeile."<br>";
	}
}
 
weiteres problem..
PHP:
<?php
require ("config.php"); //db gedönz
$connect    = @mysql_connect($mysql_host, $mysql_user, $mysql_pw); 
$db         = mysql_select_db($mysql_db,$connect) or die ("Kann die Datenbank nicht lesen!"); //Datenbank

$liste = "namen.txt";
if(file_exists($liste)) {
    $liste = file($liste);
    shuffle($liste);
    foreach( $liste as $zeile ) {
        // echo $zeile."<br>";  // Testausgabe
        $sql_query_string = "INSERT INTO planeten (planetenname) VALUES ('".$zeile."')";
        mysql_query($sql_query_string) or die('query fehlgeschlagen');
    }
}
gibt mir jetzt folgendes aus

Carosi VI
Alk'lellish III
query fehlgeschlagen

sprich es kommt mit Sonderzeichen nicht zurrecht ' ( " etc. wie löse ich das Problem am besten ?

mfg Spikaner
P.S. Auserdem wird ein dummes "Carosi VI\r\n" sprich \r\n erzeugt was ich auch net gebrauchen kann.
Wie bekomme ich das wech ?
 
Zuletzt bearbeitet:
Zurück