Nummerndatei auslesen und aufrufen

dirkgently

Erfahrenes Mitglied
Hallo ;)

Ich arbeite gerade an einer webseite, wo man nach Eingabe einer Produkt Nr. zu einer Produkt .html Seite kommen soll.
Ich habe in die html Datei ein Formular mit Eingabe Button eingebaut.

Ich stelle mir vor, das ich eine .txt Datei (oder .xml, oder ähnliches) habe, inder z.b. steht:
Code:
12345; 12345.html
also, wenn die Zahl 12345 eingegeben wird, soll die Seie 12345.html aufgerufen werden.

Ich denke, dass sowas mit php möglich ist. Leider bin ich nicht sehr fit mit php und deshalb auf Hilfe angewiesen.
Vielleicht hat jemand sowas schon mal irgendwo gesehen, oder teile davon schon mal verwendet.
Oder vielleicht kennt jemand ein gutes Tutorial, oder eine gute Hilfe, die mir dabei weiterhelfen kann? Oder kennt bestimmte Fachbegriffe, die mir die Suche nach solchen Scripts erleichtern kann

Vielen Dank!
Grüße!:)
 
Mit Datenbank besser zu lösen.
Hast du die Möglichkeit?

Ist denn die Eingabe auch mal unterschiedlich als der Dateiname?
Also soll er z.b. mit "abc" auch auf 123.html kommen können?
Wenn nicht ist die Sache ganz einfach zu lösen

PHP:
$eingabe = $_GET["eingabe"];
$filename = $eingabe + ".html";
if (file_exists($filename) echo "<meta http-equiv=\"refresh\" content=\"0; URL=$filename\">";
else echo "Datei nicht vorhanden";
 
Danke dir für die schnelle Antwort !!

Die Datei kann genauso heißen wie die Nummer.
Also:
12345 -> 12345.html
3456 -> 3456.html
ist also Identisch und ändert sich nicht.

Zur Not geht das auch mit Datenbank, aber ich denke das ist mit Kanonen auf Spatzen geschossen. Würde das gerne ohne DB realisieren (nur mit txt Datei oder xml,...)

Vielen dank für dein Script!. Das werde ich jetzt mal probieren...
Wenn ich das richtig verstehe wird nur danach geschaut, ob eine datei mit 12345.html existiert und wenn diese identisch zur Eingabe ist, aufgerufen.?!
 
Wenn sie existiert wird der Meta-Tag zur Weiterleitung geschrieben.
Mehr steht dann nicht auf der Seite.
Ist quasi wie hier bei tutorials.de wenn du dich einloggst.
Da kommt ja auch ne Zwischenseite die dnan automatisch weitergeht.
Du kannst sie natürlich erweitern das man auch slebst klicken kann falls die Weiterleitung nicht geht.

Ddann schreibst du halt:
PHP:
echo "<meta http-equiv=\"refresh\" content=\"0; URL=$filename\"><BR><BR>Falls die Weiterleitung nicht funktioniert bitte <A HREF=$filename>hier</A> klicken.";
 
Hmm warum eine Weiterleitung?
Ist es nicht besser einfach mit include() zu arbeiten?

PHP:
include($_GET['seite'].'.html');

so bräuchtest du keine extra Seite mit welcher du nochmal weiterleiten musst.

So würd ich dein Problem lösen...

Gruß
schoko
 
Hi.

Danke!!
Wenn ich das richtig sehe, ist es dann aber nicht möglich eine "Fehlerseite" stattdessen aufzurufen, oder? wie müsste ich diesen Code denn einbauen?

Ich hab mal ein Formular erstellt:
Link

Aber es funktioniert noch nicht ganz. in der php Datei steht (wie angegeben):



PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
    <head>
        <title>Hi</title>
    </head>
    <body>
		<?php
		$eingabe = $_GET["eingabe"];
$filename = $eingabe + ".html";
if (file_exists($filename) echo "<meta http-equiv=\"refresh\" content=\"0; URL=$filename\">";
else echo "Datei nicht vorhanden";  
		?>
    </body>
</html>

Hab ich irgendeinen blöden Fehler drin?
Vielen Dank!!

Viele Grüße!
;)
 
Du hast immer noch nicht den Fehler von oben behoben :)
Am Ende If Anweisung muss die Klammer wieder zu.
Also if (file_exists($filename))

Klar kannst du auch eine Fehlerseite laden.
else include ('"fehlerseite.html');

Insgesamt also, hab gleich das von schoko mit eingefügt:
PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
    <head>
        <title>Hi</title>
    </head>
    <body>
        <?php
        $eingabe = $_GET["eingabe"];
$filename = $eingabe + ".html";
if (file_exists($filename)) include($filename);
else include ('fehlerseite.html');  
        ?>
    </body>
</html>
 
Hey!
Extrem cool! Super. Ich danke euch!!
Aber leider funktioniert das noch nicht ganz.
In dem Formular Dokument steht folgendes:
HTML:
<form action="abfrage_01.php">
<div id="navi_text">
 <ul id="Navigation">
    <li><a href="#">Produktservice</a></li>
    <li style="padding-left: 10px; padding-right: 10px">
	<input name="ean_nummer" type="text" class="favorites" value="EAN Nummer eingeben" maxlength="20" />
      <input type="submit" name="Submit" value="los" />
    </li>
    <li><a href="#">Impressum</a></li>
    <li><a href="#">Kontakt</a></li>
 </ul>
 </div>
</form>
Link

ich hab eine 12345.html und eine 54321.html seite zum Test erstellt.
und die fehlerseite.html.
Leider ruft er automatisch die Fehlerseite auf, wenn ich 12345 oder 54321 eingebe...
In der URL Zeile wird folgendes angezeigt:
HTML:
http://www.d-signshop.de/php_abfrage/abfrage_01.php?ean_nummer=12345&Submit=los
Vielleicht liegt das daran, wie ich den Button angelegt habe?

Viele Grüße!!
:)
 
Zurück