Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI...

Daten aus Tabelle auslesen

Diskussion: Daten aus Tabelle auslesen im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Hallo, ich würde gern aus einer HTML Tabelle von einer fremden Seite meine Daten beziehen, da diese Tabelle immer ...

Antwort
Alt 02.09.05, 12:32   #1 (permalink)
 
Registriert seit: 28.08.05
hirsl Leistung: Facit NTK
Likes: 0
Standard Daten aus Tabelle auslesen

Anzeige

Hallo, ich würde gern aus einer HTML Tabelle von einer fremden Seite meine Daten beziehen, da diese Tabelle immer neu generiert wird.Ich weiß von dieser Tabelle wie sie gebaut wird.(=Suplierplan)

Wie kann ich auf meiner Seite nur den Inhalt von der Tabelle ausgeben?(das Design ist wirklich grässlich)

Hier meine Ursprungstabelle:
Klick

mfg.
Hirsl

P.S.:Wär nett wenn sich jemand auf mein anderes Posting(Scrollbalken mit as) melden würde ;)

hirsl ist offline   Mit Zitat antworten
Alt 02.09.05, 14:13   #2 (permalink)
 
Registriert seit: 22.05.05
Ranger Leistung: Facit NTK
Likes: 0
Standard

Sofern du PHP hast ist das einfach:
Du liest die Tabelle ein (entweder durch manuelles kopieren in ein Textfenster oder per gefälschten POST-Headern an die Page).
Dann entfernst du mit str_replace() und Preg_replace() alle unnötigen Sachen, bis nurnoch übrig bleibt was du brauchst.
Ranger ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 02.09.05, 22:33   #3 (permalink)
Themenstarter
 
Registriert seit: 28.08.05
hirsl Leistung: Facit NTK
Likes: 0
Standard

aber das wäre dann ja nicht dynamisch?

PHP-Code:
<?php
$woher 
"http://www.g19.asn-wien.ac.at/bg19home/supplierungen/Web_Klassen_7A.htm";

$data implode(""file($woher));
if (
preg_match("/<TABLE border=\"3\" rules=\"all\" bgcolor=\"#E7E7E7\" cellpadding=\"1\" cellspacing=\"1\">(.*)<\/table>/i"$data,$table)) 
{
$tabelle $table[1]; 
}
if(
$tabelle) echo "OK<br><hr>";
echo 
$data;
?>
Das hab ich mir zusammengetan(habs wo gefunden und herumprobiert) geht aber nicht

HILFE!!!!!

mfg.
Hirsl
hirsl ist offline   Mit Zitat antworten
Alt 03.09.05, 08:36   #4 (permalink)
 
Benutzerbild von BasicAvid
 
Registriert seit: 17.03.04
BasicAvid Leistung: Facit NTK
Likes: 2
Standard

So gebe Dir mal einen kleinen anstoss.

PHP-Code:
$url "http://www.g19.asn-wien.ac.at/supplierungen/Web_Klassen_7A.htm"// Von wo!

$arr file($url); // die Datei in ein Array einlesen! Jede Zeile ist ein Element 

foreach($arr as $line// Array auslesen
{
  
//echo htmlspecialchars($line)."<br>"; // Mit Tags Anzeigen
  
echo $line// Real Anzeigen

Der Rest sollte nicht mehr so schwer werden!
In der foreach schleife könntest Du jetzt mit preg_match arbeiten damit du die Rohdaten hast.
__________________
Mfg Basic Avid
- Use it or be used! -
BasicAvid ist offline   Mit Zitat antworten
Alt 03.09.05, 14:17   #5 (permalink)
Themenstarter
 
Registriert seit: 28.08.05
hirsl Leistung: Facit NTK
Likes: 0
Standard

Sorry,aber ich stehe immer noch auf der leitung...
soweit war ich glaub ich schon
aber wie kann ich mir jetzt die zelleninhalte holen? wie kann ich php dazu bringen, dass erst in der zweiten zeile,also erst nach dem ersten <td></td> Tag begonnen werden soll?

Thx to all help,
mfg.
Hirsl
hirsl ist offline   Mit Zitat antworten
Alt 03.09.05, 15:52   #6 (permalink)
 
Benutzerbild von BasicAvid
 
Registriert seit: 17.03.04
BasicAvid Leistung: Facit NTK
Likes: 2
Standard

Hab gerade gemerkt, dass noch ein Logik Fehler drin. Wenn ich dazu komme behebe ich den noch.
Falls Du es selber versuchen willst hier eine kleine Fehlerbeschreibung:
Die letzten beiden Spalten werden nicht richtig ausgelesen, besser gesagt falls man in den Spalten was einträgt werden die danach nicht mehr richtig ausgelesen.

Da ich nichts besseres zu tun hatte hab ich Dir das Script geschrieben Du musst es nur noch anpassen!
Es liest die Tabelle aus und zeigt Sie wieder an.
PHP-Code:
<?php
/*########################################################
  #         Dieses Script ist von BasicAvid(c)           #
  #            Samstag, 3.September 2005                 #
  ########################################################
*/
$convert = array(); // ein Hilfsarray
$start 0// wird später benötigt
$cols 11// wieviel Spalten werden benötigt
$url "http://www.g19.asn-wien.ac.at/supplierungen/Web_Klassen_7A.htm"// Von welcher URL
$string "Klasse(n)"// Wird benötigt um den Anfang festzustellen
$string2 "Vertretungs-Text"// Um das Ende festzustellen
$arr file($url); // Datei wird eingelesen


for($i=0;$i<count($arr);$i++)
{
   
$arr[$i] = strip_tags($arr[$i]); // Tags entfernen
   
if(!empty($arr[$i])&& trim($arr[$i]) ) // Prüfen ob nicht Leer und entferne Vor-Nachleerzeichen
   
{
      
array_push($convert,trim($arr[$i])); // an das Hilfsarray anfügen
      
      
if(trim($arr[$i]) == "&nbsp;&nbsp;"// ist das aktuelle Element gleich HIER FEHLER "&nbsp;&nbsp;"
        
array_push($convert,"&nbsp;");     // füge noch ein Element an das Hilfsarray an
   
}
   
   
}

for(
$i=0;$i<count($convert);$i++) // Schleife um den Startpunkt zu ermitteln
{
  if(!
strnatcmp($string,$convert[$i]))
    
$start $i;
  
}

/*
Hier beginnt das eigentliche darstellen der Daten, 
muss dementsprechend angepasst werden!

*/

echo "<table border='1' align='center'>\n";

for(
$i=$start,$m=0;$i<count($convert)-8;$i++,$m++) // bei count($convert)-8 werden die letzten unnötigen Daten entfernt
{

  
  
  if(
$m==0// Anfang einer Zeile 
    
echo "<tr align='center'>\n";
    
  if(!
strnatcmp("statt",$convert[$i+$j])) 
  {
     echo 
"<td>".$convert[$i+$j]."<br>".$convert[$i+$j+1]."</td>\n";
     
$j++;
  }
  else
     echo 
"<td>".$convert[$i+$j]."</td>\n";
     
       
  if(
$m == $cols// Ende einer Zeile
  
{
    echo 
"</tr>\n";
    
$cols 12// Spaltenanzahl auf 12 setzen
    
$m=0// variable zurücksetzen für die nächste Zeile
  
}   
  
}
echo 
"</table>\n";

?>
In dem Array $convert hast Du nur die Daten der Tabelle drin.
Hab Sie wieder in eine Tabelle gepackt. Mach was draus.
Hoffe es hilft Dir!?
__________________
Mfg Basic Avid
- Use it or be used! -
BasicAvid ist offline   Mit Zitat antworten
Alt 03.09.05, 19:18   #7 (permalink)
Themenstarter
 
Registriert seit: 28.08.05
hirsl Leistung: Facit NTK
Likes: 0
Standard

Merci,

Das Script is echt gut,danke.Ja das mit den letzten Zeilen,ist irgendwie komisch.ich werds mal probieren.

mfg.
Hirsl

EDIT:
Der Fehler liegt darin, dass (geschützte)Leerzeichen nicht erkannt werden,d.H. teilweise doppelt,tw. garnicht.Habe aber noch keine Lösung.
EDIT:
Ich habs mit anderen Pläne probiert.Z.B. von der 7ten u 8ten gehts, bei der 5.allerdings nicht.Problem immer noch nicht behoben.Sollte schließlich dynamisch sein

EDIT um 03:00:
Ich glaube der Fehlrt liegt hier.ich hab das ganze mit implode getestet,irgendwie wird das leerzeichen(auch wenn nachträglich als text geändert) nicht angezeigt
PHP-Code:
########################################################  
  
if(!strnatcmp("statt",$u[$i+$j])) 
  {
    echo 
"<td>".$u[$i+$j]."<br>".$u[$i+$j+1]."</td>\n";
    
$j++;
  }
  else
     echo 
"<td>".$u[$i+$j]."</td>\n";
######################################################## 
hirsl ist offline   Mit Zitat antworten
Alt 04.09.05, 10:00   #8 (permalink)
 
Benutzerbild von BasicAvid
 
Registriert seit: 17.03.04
BasicAvid Leistung: Facit NTK
Likes: 2
Standard

Genau dass ist das Problem, hab das Script eben gestern schnell mal geschrieben und flupp ist ein Fehler drin!
Ich werde es heute auf jeden fall nochmal ändern.

Falls Du die Lösung gefunden hast poste sie bitte.
__________________
Mfg Basic Avid
- Use it or be used! -
BasicAvid ist offline   Mit Zitat antworten
Alt 11.09.05, 18:19   #9 (permalink)
Themenstarter
 
Registriert seit: 28.08.05
hirsl Leistung: Facit NTK
Likes: 0
Standard

Hilfe!
Hab echt keine Ahnung worin der Fehler liegt!
@BasicAvid: Hast du den Fehler schon gefunden?


Danke,
Hirsl
hirsl ist offline   Mit Zitat antworten
Alt 11.09.05, 20:13   #10 (permalink)
 
Benutzerbild von BasicAvid
 
Registriert seit: 17.03.04
BasicAvid Leistung: Facit NTK
Likes: 2
Standard

Hi,

ja ich habe den Fehler bereits gefunden, nur dass ich ihn nicht ausmerzen kann. Deshalb habe ich das Script nochmal komplett neu geschrieben funzt aber auch noch nicht so ganz!

Das Problem liegt im einlesen, da in einer Zeile zweimal ein <td> - Tag steht!
Man muss erst nach dem Table-Anfang suchen, dann nach Zeilen und Spalten und so die Daten einzeln einlesen!
__________________
Mfg Basic Avid
- Use it or be used! -
BasicAvid ist offline   Mit Zitat antworten
Alt 20.03.06, 13:54   #11 (permalink)
Themenstarter
 
Registriert seit: 28.08.05
hirsl Leistung: Facit NTK
Likes: 0
Standard

Schaut irgendwies aus als würde es doch funzen....
P.S.: neuer Link : http://www.g19.asn-wien.ac.at/bg19ho...Klassen_7A.htm

mfg.
Hirsl
hirsl ist offline   Mit Zitat antworten
Alt 20.09.10, 21:55   #12 (permalink)
 
Registriert seit: 20.09.10
pkpatrick Leistung: Facit NTK
Likes: 0
Standard

hmm link down...
pkpatrick ist offline   Mit Zitat antworten
Alt 20.09.10, 22:08   #13 (permalink)
Member of Honour
 
Benutzerbild von beavisbee
 
Registriert seit: 22.02.07
beavisbee Leistung: Pentium IIIbeavisbee Leistung: Pentium IIIbeavisbee Leistung: Pentium IIIbeavisbee Leistung: Pentium III
beavisbee eine Nachricht über ICQ schicken
Likes: 77
Standard

liegt vielleicht daran, dass der Thread schon 5 Jahre alt ist und der Thread-Steller vor 3 Jahren das letzte mal in diesem Forum aktiv war...
Da zudem der Link auch nur bei diesem speziellen Problem Relevanz hatte, ist es wohl besser, diesen Thread einfach in Frieden ruhen zu lassen...

immer diese Thread-Nekrophilen hier... *kopfschüttel*
beavisbee ist gerade online   Mit Zitat antworten
Alt 20.09.10, 22:10   #14 (permalink)
 
Registriert seit: 20.09.10
pkpatrick Leistung: Facit NTK
Likes: 0
Standard

achja stimmt,
Hab das hier über google gefunden und nicht drauf geachtet da ich jetzt in diese schule gehe + in die 7B
Darum dachte ich weil er den Link der 7ten klassen verwendet hat dass es noch aktuell ist sorry^^
pkpatrick ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Web, Network & Multimedia Palace » (Web-) Design und webbasierte Sprachen » Daten aus Tabelle auslesen
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Daten auslesen gugugs (Web-) Design und webbasierte Sprachen 33 03.02.08 13:49
Auslesen persönlicher Daten durch PHP script? Don Holiday (In)security allgemein 4 03.07.07 16:37
daten aus einer mysql tabelle nach ganz bestimmter art auslesen Sunrize (Web-) Design und webbasierte Sprachen 4 14.12.05 00:45
VB Daten auslesen, speichern, verschiken dabind Code Kitchen 2 27.04.05 17:29
Daten aus Inetsite auslesen??? Jadawin Code Kitchen 4 16.02.04 16:03


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61