Antworten auf deine Fragen:
Neues Thema erstellen

Antworten zum Thema „XML in PHP auslesen (aber auf eine bestimmte weise)“

Daniel_Knecht

PSD-Mitglied

Hallo,
ja das Thema gibts aber ich brauche es auf eine andere weise. Und zwar möchte ich eine XML Datei die nur reinen Text beinhaltet in einer PHP Auslesen lassen.

XML:
Code:
<?xml version="1.0" encoding="utf-8"?>

#NAME# #VON# #BIS#
#NAME# #VON# #BIS#
#NAME# #VON# #BIS#
...

so soll diese XML aussehen. Und zwar soll die PHP Datei auch den Zeilenumbruch erkennen.

Warum aber gerade auf diese XML weise?
Ganz einfach.
Da diese XML zu einem Tool gehört welches ich selbst geschrieben habe und die Daten die in der XML stehen am Tag mehrmals geändert werden können aber es blödsinnig ist jedes mal das Tool zu Aktualisieren habe ich gedacht ich lasse eine PHP Datei mit einem schönen Design im Tool auslesen.
Klar könnte ich das auch alles in einer PHP Datei machen ABER... die Leute die das Tool mit benutzen (Clantool) haben alle keine Ahnung von PHP,HTML etc. Und da ich auch nicht immer am PC sein kann sollten die Leute es auch selbst machen können also die Daten in der XML eintragen und Bearbeiten bzw. Löschen daher sollte es oder währe es nicht schlecht wenn dies so irgendwie gehen tut.

Da ich die ganze Nacht lang gegoogelt habe und auch Herumprobiert habe (da ich noch nicht mit XML gearbeitet habe) wende ich mich nun an euch. Ich hoffe ihr könnt mir eine Lösung dafür geben oder erklären.

Grüße DK...
 

Duddle

Posting-Frequenz: 14µHz

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Du hast doch überhaupt keinen der Vorteile von XML, wenn du kein valides XML benutzt. Deinen Ansatz verstehe ich hier überhaupt nicht. Oder hast du prinzipiell eine Tag-Struktur und willst die nur nicht zeigen?


Duddle
 

Daniel_Knecht

PSD-Mitglied

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Das ist leider das einzige was ich bisher habe.

Und wie meinste das du verstehst meinen Ansatz nicht?
 

Daniel_Knecht

PSD-Mitglied

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

ich hab jetzt mal solche valides rein gemacht aber nun?
Sorry wirklich. ich habe mit XML noch nie gearbeitet und weiß nicht wie ich die jetzt richtig in ne PHP include bzw. auslesen/anzeigen lassen kann.

Code:
<?xml version="1.0" encoding="utf-8"?>

<liste>
	<user>
	#NAME# #VON# #BIS#
	#NAME# #VON# #BIS#
	#NAME# #VON# #BIS#
	...
	</user>
</liste>
 

MyBad

localhorst

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Der Aufbau deiner XML-Datei hat relativ wenig mit XML zu tun. Eventuell solltest du doch lieber dein Ausgabe-Tool anpassen. So bringt die XML einfach gar nichts.
 

macmerlin1976

Aktives Mitglied

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Ich frag mich ja immer wieder wie mal auf die Idee kommt etwas zu verwenden wovon man keine Ahnung hat.
Warum nutzt Du XML wenn Du nicht weißt wie man es richtig nutzt.

Schreib doch deine Infos in ne TXT Datei. Dann ziehst Du dir die TXT in PHP in einen String und zerteilst Ihn mit explode(" ", $string);

Damit kommst du genauso zum gewünschten Ziel.
 

Daniel_Knecht

PSD-Mitglied

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Ok ich habe jetzt eine txt genommen und soweit funktioniert das.

php:
PHP:
<?php 
$thisFileContent = file("test.txt");  
for($i=0; $i<10; $i++){ 
   echo $thisFileContent[$i];  
   echo $zeile."<br>";
}
?>

txt (nur der reine text):
Code:
#NAME# #VON# #BIS#
#NAME# #VON# #BIS#
#NAME# #VON# #BIS#
...

aber... wie mache ich das das jetzt zb. die erste zeile im div1 steht die 2. zeile im div2 und die 3. zeile im div3 usw.?
 

DJWebdesign

The Only-One

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Schau Dir bitte mal den Befehl explode an.

Wo hast Du denn die $zeile definiert, die ausgegeben werden soll???
 

Daniel_Knecht

PSD-Mitglied

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Nirgends.
diesen kleinen Script habe ich bei google gefunden.
die echo Zeile habe ich aber noch hinzugefügt weil sonst die php Datei den Zeilenumbruch nicht erkannt hat.
 

stylux

Pixelchemiker

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Herrlich :D
Ich denke du meinst, dass du keinen Umbruch gesehen hast und das liegt am <br>, welches du mit ausgibst. das $zeile an der stelle is eine undefinierte Variable und hat da demnach nix verloren.

Um den Array der Zeilen durchzugehen würde ich am ehesten foreach() verwenden und dann die einzelnen Zeilen mit explode() auseinander nehmen.
Dazu: PHP: explode - Manual
PHP:
<?php
$zeilenarray = file("test.txt");

foreach($zeilenarray AS $zeile){
  $inhaltsarray = explode(" ", $zeile);
  echo "#Name#: ".$inhaltsarray[0]." - #von#: ".$inhaltsarray[1]." - #bis#: ".$inhaltsarray[2]."<br />";
}
?>
 

Daniel_Knecht

PSD-Mitglied

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Ich danke euch und vorallem synlux für die hilfe.
Ich habe es nun soweit hinbekommen :)



Eins würd ich trotzdem gern noch wissen wollen...
Was muss ich in diesem Array noch eintragen um das eine Meldung ausgegeben wird (Keine Daten vorhanden!) oder so etwas ähnliches wenn die .txt leer ist?
 

stylux

Pixelchemiker

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

PHP:
 <?php
$zeilenarray = file("test.txt");

if(count($zeilenarray)){
  foreach($zeilenarray AS $zeile){
    $inhaltsarray = explode(" ", $zeile);
    echo "#Name#: ".$inhaltsarray[0]." - #von#: ".$inhaltsarray[1]." - #bis#: ".$inhaltsarray[2]."<br />";
  }
}else{
  echo "Keine Eintr&auml;ge";
}
?>
</span> </span>
 

Daniel_Knecht

PSD-Mitglied

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Hm irgendwas stimmt da nicht.

PHP:
<?php 
$zeilenarray = file("text.txt");

if(count($zeilenarray)){
foreach($zeilenarray AS $zeile){
  $inhaltsarray = explode("/", $zeile);
  echo
	"<table width='100%' height='auto' border='0' cellspacing='0' cellpadding='0' style='color:#000; font-size:12px;'>
  		<tr>
    		<td width='145px' valign='middle'>".$inhaltsarray[0]."</td>
    		<td width='5px'>&nbsp;</td>
    		<td width='300px' valign='middle'>".$inhaltsarray[1]."</td>
    		<td width='5px'>&nbsp;</td>
    		<td width='145px' valign='middle'>".$inhaltsarray[2]."</td>
    		<td width='5px'>&nbsp;</td>
    		<td valign='middle'>".$inhaltsarray[3]."<br /></td>
  		</tr>
	</table>"
  }
}else{
  echo "Keine Eintr&auml;ge";
}
?>

der schmeißt mir diese Fehlermeldung aus:
Code:
Parse error: syntax error, unexpected '}', expecting ',' or ';' in /www/htdocs/###/###/###/###/liste.php on line 65

Zeile 65 = }
 
Zuletzt bearbeitet:

Daniel_Knecht

PSD-Mitglied

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Ja klar logisch da fehlt das ";" beim ersten echo :D Danke.

Aber mir wird kein Text Ausgegeben!
 

stylux

Pixelchemiker

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Das is insgesamt alles eher unschön, zumal du für jede Zeile gleich ne ganze Tabelle anlegst. Lieber in der Schleife jeweils ne Zweile anlegen.

Wenn du dann noch vor jeden Variable zu testzwecken ein X einbaust (hab ich jetzt mal gemacht!)
dann siehst du auch ob er die Zeilen ausspuckt oder nicht.
Wenn du jetzt die X siehst aber sonst kein Text dann stimmt was mit dem explode() nicht
oder die datei hat zwar zweilenumbrüche aber keinen inhalt.
PHP:
<?php 
$zeilenarray = file("text.txt");

if(count($zeilenarray)){
  echo "<table width='100%' height='auto' border='0' cellspacing='0' cellpadding='0' style='color:#000; font-size:12px;'>";
  foreach($zeilenarray AS $zeile){
    $inhaltsarray = explode("/", $zeile);
    echo "
          <tr>
            <td width='145px' valign='middle'>X".$inhaltsarray[0]."</td>
            <td width='5px'>&nbsp;</td>
            <td width='300px' valign='middle'>X".$inhaltsarray[1]."</td>
            <td width='5px'>&nbsp;</td>
            <td width='145px' valign='middle'>X".$inhaltsarray[2]."</td>
            <td width='5px'>&nbsp;</td>
            <td valign='middle'>".$inhaltsarray[3]."<br /></td>
          </tr>";
  }
  echo "</table>";
}else{
  echo "Keine Eintr&auml;ge";
}
?>
 

Daniel_Knecht

PSD-Mitglied

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

oha... weißte was mein fehler war? *rotwerd*
Ich hatte in der .txt noch die / (die ich als neuen Array angegeben hab) drin stehen gehabt. also das sah so aus: //// statt komplett leer.

Zu den Tabellen:
Das liegt eig. alles in einem div. Die tabellen sind nur dazu da um es etwas besser ohne großen Aufwand Positionieren zu können ;)

Das is aber auch alles noch nicht fertig.
 

lachender_engel

Aktives Mitglied

AW: XML in PHP auslesen (aber auf eine bestimmte weise)

Hm irgendwas stimmt da nicht.

PHP:
  echo
    "<table width='100%' height='auto' border='0' cellspacing='0' cellpadding='0' style='color:#000; font-size:12px;'>
          <tr>
            <td width='145px' valign='middle'>".$inhaltsarray[0]."</td>
            <td width='5px'>&nbsp;</td>
            <td width='300px' valign='middle'>".$inhaltsarray[1]."</td>
            <td width='5px'>&nbsp;</td>
            <td width='145px' valign='middle'>".$inhaltsarray[2]."</td>
            <td width='5px'>&nbsp;</td>
            <td valign='middle'>".$inhaltsarray[3]."<br /></td>
          </tr>
    </table>"

Mach aus dem Code oben ein

PHP:
  echo "<table width='100%' height='auto' border='0' cellspacing='0' cellpadding='0' style='color:#000; font-size:12px;'>
          <tr>
            <td width='145px'  valign='middle'>".$inhaltsarray[0]."</td>
            <td width='5px'>&nbsp;</td>
            <td width='300px'  valign='middle'>".$inhaltsarray[1]."</td>
            <td width='5px'>&nbsp;</td>
            <td width='145px'  valign='middle'>".$inhaltsarray[2]."</td>
            <td width='5px'>&nbsp;</td>
            <td valign='middle'>".$inhaltsarray[3]."<br  /></td>
          </tr>
    </table>";

Dann klappt es auch.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
175.158
Beiträge
2.581.881
Mitglieder
67.226
Neuestes Mitglied
Alec168
Oben