• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

ebay Shop auf Seite übernehmen (hilfe)

heini

Neues Mitglied
Hallo,

ich habe gelesen, das ich meinen Ebay Shop auf meine Website projezieren kann.

folgender HTML code wurde mir gegeben, allerdings funktionier es bei mir noch nicht richtig;

HTML:
<html>
<head>
<title>OnlineShop </title>
</head>
<body>
<h1>Willkommen</h1>

<?
$shopname = 'NAME DES SHOPS';
$a = file("http://stores.ebay.de/$shopname/");

foreach ($a as $zeile) {
	echo str_replace('/'.$shopname,
		'http://stores.ebay.de/'.$shopname,
		$zeile);
}

?></body></html>
 
Willkommen im Forum.

Das ist kein reines HTML, sondern enthält PHP-Code. Wird der ausgeführt? (Wenn du dir den Quellcode der Seite im Browser ansiehst, steht dann dort der PHP-Code?)
 
Dieser Fehler tritt auf

Warning: file() [function.file]: URL file-access is disabled in the server configuration in /var/www/web676/html/index.php on line 12

Warning: file(http://stores.ebay.de/e-tail3r/) [function.file]: failed to open stream: no suitable wrapper could be found in /var/www/web676/html/index.php on line 12

Warning: Invalid argument supplied for foreach() in /var/www/web676/html/index.php on line 14

nein der php code wird nicht angezeigt..
 
Du hast allow_url_fopen nicht aktiviert auf deinem Server.

- PHP: Runtime Configuration - Manual

Falls du das beeinflussen kannst (sprich php.ini editieren), such im Web danach, da gibt es viele Anleitungen.

Wenn du auf Webspace bist, auf dem du das nicht beeinflussen kannst, musst du auf eine andere Möglichkeit der Datenübermittlung ausweichen (curl, Sockets).

Suche etwa nach „php download file curl“ oder „php download file socket“, da sollte es fertige Snippets geben. Ich habe leider gerade keine Zeit, groß zu suchen.

- http://www.php-mysql-tutorial.com/wikis/php-tutorial/reading-a-remote-file-using-php.aspx
 
mir wurde gesagt, das ich das nicht aktivieren kann. Ich habe keine Ahnung von Php und von html nur sehr wenig. Was müsste ich da genau umändern, damit das mit CURL oder Sockets klappt ?
Ich habe mich schon dran versucht, aber bisher ist noch nichts gescheites bei rausgekommen.

HTML:
<html>
<head>
<title> Onlineshop </title>
</head>
<body>
<h1>Willkommen </h1>

<?
$shopname = "XXX";
$content = file_get_contents('http://stores.ebay.de/$shopname/'); 
foreach ($content !== false) {
	echo str_replace('/'.$shopname,
		'http://stores.ebay.de/'.$shopname,
		$zeile);
}

?></body></html>
 
Hier eine Variante mit curl:

PHP:
function fetchUrl($url)
{
    // create a new cURL resource
    $ch = curl_init();

    // set URL and other appropriate options
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

    // grab URL and pass it to the browser
    $body = curl_exec($ch);

    // close cURL resource, and free up system resources
    curl_close($ch);

    return $body;
}

echo fetchUrl('http://www.html.de/');
 
Zum Beispiel:

Code:
<html>
<head>
<title> Onlineshop </title>
</head>
<body>
<h1>Willkommen </h1>

<?
function fetchUrl($url)
{
    // create a new cURL resource
    $ch = curl_init();

    // set URL and other appropriate options
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

    // grab URL and pass it to the browser
    $body = curl_exec($ch);

    // close cURL resource, and free up system resources
    curl_close($ch);

    return $body;
}

echo fetchUrl('http://www.html.de/');  

?></body></html>

Das erzeugt so natürlich falsches Markup.
 
Was versteht man genau unter Markup ?

Es hat super geklappt :)
Danke!

Wie kann man das Icon oben in der Title ändern ? Hab da son blödes t-com icon^^.
 
Was versteht man genau unter Markup ?

Die Anordnung der HTML-Elemente im Quellcode der Seite. Dazu gibt es bestimmte Regeln wie etwa: „Jede Seite beginnt mit <html>, endet mit </html> und darf dazwischen kein weiteres html-Element enthalten.“

Dagegen verstößt unser Fall hier (wahrscheinlich), da wir meinem Verständnis nach eine vollständige HTML-Seite (die ihrerseits <html> und </html> enthält) hernehmen und mitten in eine andere HTML-Seite packen.

Etwas doofe Analogie dazu: Du willst Harry Potter 1 und Harry Potter 2 in einem einzigen Buch veröffentlichen. Da nimmst du dann auch nicht HP2 her und packst es samt Buchumschlag und Titelseiten hinten in HP1 und tackerst es irgendwie fest oder so.

Du würdest zumindest den Umschlag entfernen und nur die wirklichen Inhaltsseiten einfügen (und wahrscheinlich neu nummerieren und Querverweise anpassen und ähnliches).

Hier rammen wir jetzt praktisch die eBay-Seite mit sämtlichen „Umschlagsinformationen“ stumpf in unser bestehendes Buch und bauen darauf, dass die Clients (etwa Webbrowser) schon irgendwie damit fertigwerden.​

Ganz genau weiß ich es aber nicht, da ich keine Ahnung habe, in welcher Form eBay die Daten zur Verfügung stellt.



Zur anderen Frage:

- Favicon
 
Hey ok, danke für die Erklärung. Im groben klappt es aber jetzt. Allerdings wenn ich auf i.eine Kategorie von meinem ebay shop gehe, leitet der mich nicht weiter.

"
Not Found

The requested URL /e-tail3r/_i.html was not found on this server.
"
Wie kann ich die Umlaute richtig ausschreiben lassen. Beim Ebay Shop steht anstatt Weiß Weiß

man soll in den header i.wie das eingeben:

header('Content-Type: text/html; charset=utf-8');

allerdings weiß ich nicht wo der php header ist ^^
 
Zuletzt bearbeitet:
Setze ganz oben in deine Datei (vor der ersten Ausgabe) die Zeile:

PHP:
<?php header('Content-Type: text/html; charset=utf-8'); ?>

Zur Sache mit den Links, die nicht ankommen: Das ist das, was ich im HP-Beispiel als „Querverweise“ bezeichnet habe. Dadurch, dass du die eBay-Seite in deine eigene Seite einbindest, beziehen sich Links, die keine völlständigen URLs sind (also etwa keine Protokollangabe – http:// – enthalten) nun erstmal auf dein Dokument und nicht mehr auf die Seite bei eBay.

In der ursprünglichen Variante gab es Code, der das behebt. Ich baue dir das mal schnell in die curl-Version ein:

PHP:
<html>
<head>
<title> Onlineshop </title>
</head>
<body>
<h1>Willkommen </h1>

<?
function fetchUrl($url)
{
    // create a new cURL resource
    $ch = curl_init();

    // set URL and other appropriate options
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

    // grab URL and pass it to the browser
    $body = curl_exec($ch);

    // close cURL resource, and free up system resources
    curl_close($ch);

    return $body;
}

$shopname = 'NAME DES SHOPS';
$content = fetchUrl("http://stores.ebay.de/$shopname/");

	echo str_replace('/'.$shopname,
		'http://stores.ebay.de/'.$shopname,
		$content);

?></body></html>

Das dürfte unter den meisten Umständen hinhauen, aber schön ist anders. :)
 
Zurück
Oben