kostenloser Webspace werbefrei: lima-city


Suche auf lima-city

  • in: String-Struktur zu Array (Kategorien)

    geschrieben von suchsmart

    Hallo

    es gibt bestimmt verschiedene Strukturen, die funktionieren würden,
    also es muss nicht eine ganz bestimmte Struktur sein,

    wichtig (das Ziel) ist dabei einfach,
    dass ich auf bestimmte Kategorien (und desen Kinder) zugreifen kann

    Am Ende soll ein Formular heraus kommen mit (Drop-Down) Auswahl Feldern
    bzw. eine Baum-Struktur mit Links zum anklicken

    aus dem BSP: ..... wenn der User "Hobby" auswählt,
    dass er dann weiteres Dropdown mit der Auswahl Kochen oder Werkstatt bekommt
    und wenn er dann Werkstatt auswählt, dann Auswahl Zange oder Hammer

    Problem ist wohl auch die Performance, also Fehler durch erreichen des Memory-Limit

    Das BSP-Array oben ist auch stark vereinfacht,
    in den echten Daten ist es ein Multidimensionales Array,
    wobei der Kategorie-Pfad eben nur einer unter mehreren Elementen ist

    Array
    (
        [0] =>Array ( 
                 [titel] => Name des Netzteil Produkts
                 [beschreibung] => Info Text ... bla bla
                 [kategorie] => Netzteil
                 [kat_ID] => 234
                 [kat_pfad] => Computer>Hardware>Netzteil
                 [katID_pfad] => 4>51>234
                 [hersteller] => Firma
                 [preis] => 36.50
                 [info] => 500 Watt
                )
        [1] =>Array ( 
                 [titel] => Name des Laufwerk Produkts
                 [beschreibung] => Info Text ... bla bla
                 [kategorie] => Laufwerk
                 [kat_ID] => 237
                 [kat_pfad] => Computer>Hardware>Laufwerk
                 [katID_pfad] => 4>51>237
                 [hersteller] => Firma
                 [preis] => 48.20
                 [info] => DVD Brenner 16x / CD Brenner 48x
                )
        [2] =>Array ( 
         ...
                )
        ... usw ...
    )



    Ziel 1: gesamte Kategorie-Struktur (kat_pfad) als Übersicht (zur Auswahl) darstellen
    Ziel 2: nach Kategorie-Auswahl nur passende Elemente ausgeben (das ist dann kein Problem)

    mein Problem ist übersichtliche Darstellung aller möglichen Kategorien
    damit der User sehen (und klicken) kann, welche Kategorien zur Verfügung stehen

    es gibt auch jeweils Info zur Kategorie-ID, einzeln und als Struktur (Pfad)
    diese IDs könnte ich evtl ja als KEY fürs Array nehmen, aber bekomme es nicht hin

    vorallem weil:
    das ganze Array kann auch recht groß sein, z.B. hundert Haupt-Elemente
    was dann bei der Verarbeitung (Kategorie suchen) eben schnell mal zu Memory-Limit führt

    damit der User aus den umfangreichen Daten dann auch was findet
    soll es gefiltert werden zu zu aus einer bestimmten Kategorie

    damit der User eine Übersicht bekommt, welche Kategorien es überhaupt gibt
    will ich die aus den Daten extrahieren und als Baum / zur Auswahl anzeigen

    ich hoffe so ist mein Problem besser beschrieben ....
  • in: String-Struktur zu Array (Kategorien)

    geschrieben von suchsmart

    Hallo

    ich habe eine Liste (ein Array) mit Strings, die je eine Struktur darstellen

    Array
    (
        [0] => Computer>Hardware>Netzteil
        [1] => Computer>Hardware>Laufwerk
        [2] => Computer>Hardware>Arbeitsspeicher
        [3] => Computer>Software>Office
        [4] => Computer>Software>Grafik
        [5] => Computer>Software>Spiele
        [6] => Computer>Hardware>Monitor
        [7] => Computer>Hardware>Monitor>Kabel
        [8] => Computer>Hardware>Monitor>Adapter
        [9] => Computer>Software>Tools>Sonstiges
        [10] => Hobby>Kochen>Topf
        [11] => Hobby>Kochen>Messbecher
        [12] => Hobby>Kochen>Pfanne
        [13] => Hobby>Werkstatt>Zange
        [14] => Hobby>Werkstatt>Hammer
    )


    Wie bekomme ich das jetzt in ein (vernünftiges) Array
    damit ich als Ausgabe auf bestimmte Kategorie einschränken kann ?

    ich kann ja foreach durch die $daten gehen und dann explode() machen
    aber damit bekomme ich nur einzelne Arrays der Zeilen, aber keine Struktur

    als Ergebnis habe ich mir ein multidimensionales Array vorgestellt,
    das alle Ebenen abbildet, also je Ebene den Name der Kategorie
    und die Unter-Punkte dann wieder als Sub-Array

    habe es bisher so zusammen-gewurschtelt

    $struktur = array(); 
    
    
    foreach($daten as $item) { 
    	
    	$ixarr = explode('>',$item); 
    	
    	$iz = count($ixarr); 
    	
    	if ($iz == 4) { 
    		$struktur[$ixarr[0]][$ixarr[1]][$ixarr[2]][] = $ixarr[3]; 
    	} 
    	
    	elseif ($iz == 3) { 
    		$struktur[$ixarr[0]][$ixarr[1]][] = $ixarr[2]; 
    	} 
    	
    	elseif ($iz == 2) { 
    		$struktur[$ixarr[0]][] = $ixarr[1]; 
    	} 
    	
    	elseif ($iz == 1) { 
    		$struktur['main'][] = $ixarr[0]; 
    	} 
    
    
    }
    
    
    print "<pre>\n"; 
    print_r($struktur); 
    print "</pre>\n";



    Ergebnis ist dann so

    Array
    (
        [main] => Array
            (
                [0] => Computer
                [1] => Hobby
            )
    
        [Computer] => Array
            (
                [main] => Array
                    (
                        [0] => Hardware
                        [1] => Software
                    )
    
                [Hardware] => Array
                    (
                        [0] => Netzteil
                        [1] => Laufwerk
                        [2] => Arbeitsspeicher
                        [main] => Monitor
                        [Monitor] => Array
                            (
                                [0] => Kabel
                                [1] => Adapter
                            )
    
                    )
    
                [Software] => Array
                    (
                        [0] => Office
                        [1] => Grafik
                        [2] => Spiele
                        [main] => Array
                            (
                                [0] => Tools
                            )
    
                        [Tools] => Array
                            (
                                [0] => Sonstiges
                            )
    
                    )
    
            )
    
        [Hobby] => Array
            (
                [main] => Array
                    (
                        [0] => Kochen
                        [1] => Werkstatt
                    )
    
                [Kochen] => Array
                    (
                        [0] => Topf
                        [1] => Messbecher
                        [2] => Pfanne
                    )
    
                [Werkstatt] => Array
                    (
                        [0] => Zange
                        [1] => Hammer
                    )
    
            )
    
    )


    aber irgendwie "nicht schön" ... mit dem Value als Key für Sub-Array

    auch ist so bei mehr Daten (und mehr Ebenen) schnell das Memory-Limit erreicht

    ....... jemand ne bessere Idee wie ich da ran gehen soll ??
    Text-Struktur zu multidimensionales Array

    mit dem Ziel, das man Ausgabe für bestimmte Kategorie machen kann
  • in: header utf-8 und Daten mit iso-8859-1

    geschrieben von suchsmart

    danke, ich bemühe mich ja möglichst auf UTF-8 zu arbeiten

    mein Problem mal andersrum beschrieben

    meine Seite ist grundsätzlich in UTF-8
    ich hole Daten aus externer CSV Datei, auf die ich keinen Einfluss habe
    die CSV ist leider in iso-8859-1 angelegt, das kann ich auch nicht ändern
    Umlaute stehen darin im Klartext, also ä ö ü aber auch € Zeichen, etc.

    vor Ausgabe mache ich also utf8_encode()
    aber die Umwandlung der ISO-Daten in UTF-8 funktioniert nicht vollständig
    bestimmte Zeichen werden nicht richtig codiert mit utf8_encode

    wie gesagt z:B. das Euro-Zeichen € oder ein langer Gedankenstrich – (&dash;)
    aber auch Fehler bei anderen Sonderzeichen, die im "Klartext" ankommen

    gibt es eine Liste der Zeichen, die "falsch" codiert werden?
    bzw. wie kann ich auch diese Zeichen "richtig" zu UTF-8 bringen ?
  • in: header utf-8 und Daten mit iso-8859-1

    geschrieben von suchsmart

    wenn ich per php header den Charset auf UTF-8 gestellt habe
    und dann aus einer CSV Daten einlese, die in iso-8859-1 angelegt ist

    kommt dann der Content aus der CSV als UTF-8 im Script / Browser an ?
    also quasi wie mit utf8_encode() ... oder mus ich selber noch utf8_encode() machen?


    und was machen bei Zeichen, die nicht "richtig" in UTF-8 de-/codierbar sind
    z:B. das Euro-Zeichen € oder ein langer Gedankenstrich – (&dash;)
  • in: Global funktioniert nicht... auf Lima...

    geschrieben von suchsmart

    dexus85 schrieb:
    EDIT: Funktioniert doch, nur hängt wohl manchmal PHP um die Seite mit aktuellen Daten zurück zu liefern.


    vielleicht hilft es ja,den Cache auszuschalten

    .htaccess
    Header set Cache-Control "must-revalidate, no-store, no-cache, max-age=0, pre-check=0, post-check=0"
    Header set Pragma "no-cache"


    oder in .php Datei
    header("Cache-Control "must-revalidate, no-store, no-cache, max-age=0, pre-check=0, post-check=0"); 
    header("Pragma: no-cache");


    evtl auch noch header("Expires: -1");
  • in: einzelne Datei(en) von rewrite ausschließen ?

    geschrieben von suchsmart

    ja

    RewriteRule (neuheiten\.html|htmlseite\.html) $1 [L]


    das funktioniert

    Danke
  • in: einzelne Datei(en) von rewrite ausschließen ?

    geschrieben von suchsmart

    Hallo

    wenn ich auf meiner Seite Rewrite-Regeln in .htaccess habe

    wie kann ich dann einzelne Datei(en) von der Rewrite-Regel ausschließen

    RewriteBase /
    
    RewriteCond %{REQUEST_URI} /(.*)$
    
    RewriteRule kategorie_(.*).html /index.php?nkat=$1 [QSA,L]
    RewriteRule (.*)_(.*).html /index.php?nkat=$1&nid=$2 [QSA,L]
    RewriteRule (.*).html /index.php?nid=$1 [QSA,L]


    also ex existieren einige wenige .html Dateien "physisch" auf dem Webspace

    und wenn diese in URL aufgerufen werden, dann soll gar kein Rewrite angewendet werden
    sondern einfach diese Datei angezeigt werden

    was tun, um z.B. die Datei: neuheiten.html vom Rewrite auszuschließen ?!?
    Danke!


  • in: href Wert aus HTML-Code auslesen

    geschrieben von suchsmart

    Super, Danke

    da ich im Code nur einen Link erwarte, habe ich es mal ohne _all ausprobiert

    preg_match("#href=\"([^\"]*)\"#",$tmpcode,$matches); 
    $zielurl = $matches[1];


    und Danke @effektfabrik für das Beispiel mit Link zur Erklärung

    ... regular expressions scheinen ja doch sehr komplex zu ein .... oh oh

    ist es vielleicht mit DOM auslesen einfacher?
    (denn preg_match soll ja sehr Ressourcen hungrig sein)
  • in: href Wert aus HTML-Code auslesen

    geschrieben von suchsmart

    Hallo

    wie kann ich aus einem HTML-Code den href-Wert auslesen

    BSP:

    $code = '<p>Blabla bla <a target="_blank" href="http://google.de" title="Suchmaschine">Google</a> Bla blabla</p>';


    wie bekomme ich daraus die Zeil-Adresse (href-Wert) in eine Variable ?

    $zielurl = 'http://google.de';

    DOM auslesen oder RegEx ? ... und wie (Beispiel-Code bitte)

Login zum Webhosting ohne Werbung!