kostenloser Webspace werbefrei: lima-city


Suche auf lima-city

  • in: MySQL Tabelle kopieren (inkl. Keys)

    geschrieben von osuche

    Hallo

    wie kann ich eine Tabelle aus der DB komlett kopieren
    also nicht nur die Daten (Inhalte / Einträge) sondern auch mit KEYs, etc.

    gefunden habe ich sowas:
    $sql = "CREATE TABLE neue_tabelle AS SELECT * FROM alte_tabelle";

    damit werden zwar die Inhalte in die neue Tabelle kopiert,
    aber nicht die KEYs, etc. aus der alten Tabelle

    wie bekomme ich eine wirklich identische Kopie ?
    (ohne dass ich vorher Struktur und KEYs, etc. kenne)

    Danke
  • in: Funktion zur sicheren Variable Übergabe

    geschrieben von osuche

    Hallo

    ich suche eine Funktion, um Variablen die per _GET oder _POST übergeben werden
    vor der weiter-Verarbeitung zu filtern, um Fehler auszuschließen und Angriffe abzuwehren

    ich stelle mir das so vor:
    if (!empty($_REQUEST['variable'])) { 
    $ok_variable = filter_request($_REQUEST['variable'], true, '0-9'); 
    }

    um dann mit $ok_variable weiter im Script zu arbeiten

    als Funktion filter_request() etwa so:
    function filter_request ($var, $tags=true, $erlaubt='A-Za-z0-9_-') { 
    
    // ---- immer anwenden --- 
    $var = trim(chop($var)); 
    $var = stripslashes($var); 
    $var = html_entity_decode($var); 
    
    // ---- Optional anwenden --- 
    if ($tags === false) { $var = strip_tags($var); }
    
    // ---- nur erlaubte Zeichen  --- 
    $var = preg_replace("/[^".$erlaubt."]/","",$word);
    
    return $var; 
    }


    Das ist nur ein erster Versuch, quasi nur die Idee ....


    Welche Filter sollte ich in die Funktion rein packen ?

    a) die immer angewendet werden
    b) die optional angewendet werden (mit Schalter true / false)
    c) sonstige Filter (wie z.B. erlaubte Zeichen, etc.)

    Oder gibt es für sowas schon die eine oder andere frei Verfügbare
    und brauchbare Funktion, die Ihr mir empfehlen könnt ?!?

  • in: Alle Bilder eines Ordners auslesen

    geschrieben von osuche

    Hallo

    na wen Du die Dateinamen hast, dann kannst Du doch das Bild auch
    ganz einfach in einem <img> TAG anzeigen ....

    einfach untereinander:

    <?php
    
    $bilderordner = '../images/';   // ---- Pfad zum Ordner mit Slash / am Ende 
    
    $bilderarray = glob($bilderordner."{*.gif,*.png,*.jpg}", GLOB_BRACE); 
    
    
    foreach( $bilderarray as $filename)
    {
       echo "<br /> <img src=\"".$filename."\" border=\"0\" alt=\"Bild Nr: ".$i."\" />\r\n"; 
       echo "<br /> \r\n"; 
    }
    
    ?>



    oder immer 3 Bilder nebeneinander

    <?php
    
    $bilderordner = '../images/';   // ---- Pfad zum Ordner mit Slash / am Ende 
    
    $bilderarray = glob($bilderordner."{*.gif,*.png,*.jpg}", GLOB_BRACE); 
    
    echo "<div style=\"text-align:center; margin:0px; padding:0px;\">\r\n"; 
    echo "<div style=\"width:660px; margin:0 auto; padding;10px; background:#CCCCCC;\">\r\n"; 
    
    $n=3; // --- Umbruch nach $n Bildern 
    $i=0; 
    foreach( $bilderarray as $filename)
    { 	
    	$xi = ($i % $n); 
    	if ( $i != 0 && $xi == 0 ) {  // --- Umbruch / neue Zeile 
    	echo "<div style=\"clear:both; margin:0px; padding;0px;\">\r\n"; 
    	} 
    	
    	$bnr = ($i+1); 
    	
    	echo "<div style=\"float:left; text-align:center; margin:10px; padding:10px; background:#CCFFAA;\">\r\n"; 
    	
    	echo "<p>\r\n"; 
    	echo "Bild Nr: ".$bnr." \r\n"; 
    	echo "<br /> <img src=\"".$filename."\" border=\"0\" width=\"180\" alt=\"Bild Nr: ".$bnr."\" />\r\n"; 
    	echo "</p>\r\n"; 
    	
    	echo "</div>\r\n"; 
    	$i++; 
    }
    
    echo "</div>\r\n"; 
    echo "</div>\r\n"; 
    
    
    ?>


    nur so als Beispiel


  • in: Forum Aktivität für Webspace ?

    geschrieben von osuche

    Hallo

    da ich es so von anderen Free-Webspace Anbietern kenne
    hier mal die Frage:

    muss man im Forum innerhalb eines bestimmten Zeitraums aktiv sein
    (Beitrag schreiben oder sich nur einloggen)
    damit der Webspace weiterhin besteht ?

  • in: Seiten Blättern in MySQL Ergebnis

    geschrieben von osuche

    ganeuer noch:

    wenn( größer und gleich 10 und kleiner 100 ) ...


    sonst ist bei genau 10 keine 0 (NULL) vorne dran !!!

    if (10 <= $np AND $np < 100) { $npi = "0".$np; }


    und noch .... für Seiten Blättern in einem Array

    Funktion:

    <?php
    // ---------------------------------------------------- 
    
    function SeitenNavi ($anzahl, $proseite, $gopage, $xlimit_li, $xlimit_re) {
    
    
    $maxseite = ceil(($anzahl/$proseite)); 
    
    $xlimit = ($xlimit_li + $xlimit_re + 1); 
    
    if ($maxseite < $gopage) { $gopage = 1; }
    if ($gopage < 1) { $gopage = 1; }
    
    $pstart = ( ($gopage * $proseite) - $proseite ); 
    $pender = ( $pstart + $proseite ); 
    
    
    $yps = ($gopage-($xlimit_li+1)); 
    
    if ($yps < 1) { $yps = 1; }
    
    $ype = ($yps + $xlimit); 
    
    for ($zp=0; $zp<$xlimit; $zp++) { 
    if ($gopage == ($maxseite-$zp)) { $yps = ($yps-($xlimit-$zp-1)); } 
    } 
    
    $zpe = ($maxseite - $xlimit_re - 1); 
    if ($zpe <= $gopage) { $yps = ($yps+1); } 
    
    
    $pagenavi = ''; 
    
    ## $pagenavi .= '&nbsp;&nbsp;&nbsp; '; 
    
    $pagenavi .= 'Seiten: &nbsp;&nbsp; '; 
    
    
    if ($gopage == 1) { 
    $pagenavi .= " <u>001</u> "; 
    }
    else {
    $pagenavi .= " <a href=\"index.php?p=1\">001</a> "; 
    }
    
    
    if ( $maxseite > 1 ) {
    
    $pagenavi .= " ... "; 
    
    
    for($xp=$yps; $xp<$ype; $xp++) { 
    
    $np = ($xp + 1); 
    
    if (10 <= $np AND $np < 100) { $npi = "0".$np; }
    elseif ($np < 10) { $npi = "00".$np; }
    else { $npi = "".$np; } 
    
    
    if ($np < $maxseite) { 
    
    if ($np == $gopage) { 
    $pagenavi .= " <u>".$npi."</u> -"; 
    }
    else { 
    $pagenavi .= " <a href=\"index.php?p=".$np."\">".$npi."</a> -"; 
    } 
    
    
    }
    
    } 
    
    $pagenavi = rtrim($pagenavi,'-'); 
    
    
    if (10 <= $maxseite AND $maxseite < 100) { $pmaxi = "0".$maxseite; }
    elseif ($maxseite < 10) { $pmaxi = "00".$maxseite; }
    else { $pmaxi = "".$maxseite; } 
    
    
    $pagenavi .= " ... "; 
    
    if ($gopage == $maxseite) { 
    $pagenavi .= " <u>".$pmaxi."</u> "; 
    }
    else {
    $pagenavi .= " <a href=\"index.php?p=".$maxseite."\">".$pmaxi."</a> "; 
    }
    
    
    }
    
    return $pagenavi; 
    
    }
    
    
    
    // ---------------------------------------------------- 
    
    
    ?>



    Aunwendung:

    <?php 
    // ---------------------------------------------------- 
    
    $anzahl = count($data);    // --- Anzahl der Elemente im Array 
    $proseite = 10;   // --- Ausgabe max. Elemente pro Seite 
    $pnli = 3;     // --- Linkanzahl links von der aktuellen Seite 
    $pnre = 3;     // --- Linkanzahl rechts von der aktuellen Seite 
    
    // --- aktuelle Seite 
    
    if (!empty($_REQUEST['p'];)) { $gopage = $_REQUEST['p']; }
    else { $gopage = 1; } 
    
    // ---------------------------------------------------- 
    
    $pnavi = SeitenNavi ($anzahl, $proseite, $gopage, $pnli, $pnre); 
    
    echo "<br />".$pnavi."\r\n";  // ---- Ausgabe zum Seiten-Blaettern 
    
    $teildata = array_chunk($data,$proseite); 
    $xpage = ($gopage-1); 
    $showdata = $teildata[$xpage]; 
    
    echo "<pre>\r\n"; 
    print_r($showdata);   // ---- Ausgabe Teil-Array zur aktuellen Seite  
    echo "<pre>\r\n"; 
    
    // ---------------------------------------------------- 
    ?>



    Beispiel Ausgabe auf Seite 7 mit Linkanzahl (links und rechts der Seite) je 2 Links

    Seiten:    001 ...  005 - 006 - 007 - 008 - 009 ... 020


    .... alle Zahlen ausser hier die 007 sind Link zur jeweiligen Seite ... ?p=
    :)
  • in: Euro-Zeichen aus UTF8-String

    geschrieben von osuche

    Hallo

    ich habe einen String in UTF-8 und darin enthalten sind Euro-Zeichen

    aber bei Ausgabe sieht man nicht das € Zeichen
    sondern so als das Zeichen €

    ich habe versucht
    $text = str_replace(chr(128),'&euro;',$text);


    oder auch
    $text = str_replace(chr(0x80),'&euro;',$text);


    beide ergebnisse gleich, damit bekomme ich zwar das Euro-Zeichen angezeigt,
    aber vor dem € Zeichen steht noch eine schwarze Raute mit Fragezeichen �€
    also irgendwas ist da noch .... aber was ?!

    wie bekomme ich "Nur" das € Zeichen angezeigt ?!


    EDIT: .... habs gefunden .... vin UTF-8 steht vor dem Euro-Zeichen noch ein Â

    und orf('Â') = 194

    also
    $text = str_replace(chr(194).chr(128),'&euro;',$text);


    oder einfach
    $text = str_replace('€','&euro;',$text);



    :)
  • in: vor strip_tags() Leerzeichen zwischen alle TAGs hinzufügen

    geschrieben von osuche

    Hallo
    nagut, beser unendlich als 99

    jetzt wundert mich aber, warum die Ersetzung NICHT mit einem Minus-Zeichen funktioniert ?!

    $str = preg_replace('/-{2,}/', '-', $str);


    damit bleiben mehrfache Minus-Zeichen ---- im String ?!
    hä?

    EDIT ach ich habs .. das Minus-Zeichen escapen,
    weil es ja eine "Funktion" von-bis im Ausdruck hat

    $str = preg_replace('/\-{2,}/', '-', $str);


    alles kalr :) ... ich schick Antwort trotzdem ab,
    vielleicht hilft es ja auch noch Anderen
    die mehrfache "Minus" Zeichen zu einem machen wollen

  • in: vor strip_tags() Leerzeichen zwischen alle TAGs hinzufügen

    geschrieben von osuche

    Hallo

    wenn ich einen HTML-Code mit strip-tags() zu reinem text machen will,
    dann bekomme ich oft einen String, in dem (wichtige) Leerzeichen zwischen den TAG Elementen fehlen
    BSP

    <p>Artikel Titel</p>
    <ul>
    <li>Farbe ist blau</lI>
    <li>die Größe ist riesig</li>
    <li>Material ist Aluminium</li>
    </ul>

    ergibt mit strip_tags()

    $str = "Artikel TitelFarbe ist blaudie Größe ist riesigMaterial ist Aluminium";

    gewünscht iat aber ein Ergebnis wie

    $str = "Artikel Titel Farbe ist blau die Größe ist riesig Material ist Aluminium";

    jetzt bräuchte ich wohl einen preg_replace()
    um bei jedem TAG ein Leerzeichen einzufügen

    wenn dabei auch mal mehrere Leerzeichen entstehen, kein Problem
    denn mehrfache Leerzeichen kann man leicht zu einem ersetzen
    aber fehlende kann man eben nicht (nachträglich) rein-zaubern
    auch nicht mit Suche nach Gross-Buchstaben, da manche Elemente mit Klein-Buchstaben beginnen

    wie müsste ein preg_replace() aussehen
    um bei jedem HTML Tag innerhalb des TAGs ein Leerzeichen einzufügen
    damit bei strip_tags() die Worte aus verschiedenen Elementen nicht zu einem Wort verschmelzen ??

    EDIT: hab was gefunden !!!
    ... http://www.php.net/manual/de/function.strip-tags.php#100995

    und ein bichen erweitert ...

    besser als strip_tags ist wohl mit preg_replace

    <?php 
    
    // ---- Quellcode mit Umbruch ---- 
    $htmlcode = '
    <p>First line</p>
    <a href="foo">bar</a>
    <p>Second line</p>
    <a href="foo">bar</a>
    <p>Third line</p>
    ';
    
    
    $striped1 = strip_tags ($htmlcode); 
    $striped2 = preg_replace ('/<[^>]*>/', ' ', $htmlcode); 
    
    $rspaced = $striped2; 
    
    // ---- Umbruch entfernen --- evtl nur \n ---- 
    $rspaced = str_replace("\r\n", "", $rspaced); 
    
    // ---- Mehrfache Leerzeichen entfernen  ---- 
    $rspaced = trim(preg_replace('/ {2,99}/', ' ', $rspaced));
    
    
    echo "<pre>\r\n"; 
    
     echo "strip_tags(): \r\n" . $striped1. "\r\n";
     echo "Mit Regexp: \r\n" .$striped2. "\r\n";
     echo "Spaced: \r\n" .$rspaced. "\r\n";
    
    echo "</pre>\r\n"; 
    
    
    ?>



    Ausgabe:

    strip_tags(): 
    
    First line
    bar
    Second line
    bar
    Third line
    
    
    Mit Regexp: 
    
     First line 
     bar 
     Second line 
     bar 
     Third line 
    
    Spaced: 
    First line bar Second line bar Third line


    man beachte die Leerzeichen bei Mit Regexp

    besser :) ... oder ? ... andere Ideen ?


  • in: spannende ungelöste mathematische Probleme

    geschrieben von osuche

    wpl schrieb:

    Ergänzung: Die Quadratur des Kreises ist im übrigen ebenfalls ein unlösbares Problem.


    Die Quadratur des Kreises hat 2 Lösungen:
    = Radius mal PI hoch 2
    und
    = Radius hoch 2 mal PI

    das gilt aber nur an 2 Tagen im Jahr: am 11.11. (heute) und am 1. April

    (Achtung! Scherz !!!)
  • in: Leerzeichen nach / vor bestimmten Zeichen erzwingen ?

    geschrieben von osuche

    Hallo

    ich möchte in einem String vor / nach bestimmten Zeichen ein Leerzeichen erzwingen

    1) für bekannte Zeichen:

    bisher habe ich folgendes

    <?php
    
    $string = 'Jeder der kann/will wird es schaffen(machen)oder:auch nicht,mir egal;oder auch nicht!'; 
    
    $xzeichen = array( '(', '/' );  // ----- Leerzeichen davor
    $yzeichen = array( ':', ';', '.', ',', '!', '?', ')', '/' );  // ---- Leerzeichen danach
    
    // ------ Leerzeichen davor ----- 
    foreach ($xzeichen as $xz) {
    $string = str_replace( $xz, ' '.$xz, $string); 
    }
    
    // ------ Leerzeichen danach ----- 
    foreach ($yzeichen as $yz) {
    $string = str_replace( $yz, $yz.' ', $string); 
    }
    
    // ------ mehrfache Leerzeichen ----- 
    $string = preg_replace('/ {2,}/', ' ', $string);
    
    ?>



    das funktioniert soweit,
    aber ich kenne mich mit preg_replace nicht so gut aus
    und denke, evtl gibt es damit eine bessere Lösung,

    Problem ist auch der Punkt ... wenn ich (float) Zahlen im String habe
    dann wird aus "33.33%" dann "33. 33%" ... oder aus 1.52 MB ... 1. 52 MB
    also Regel: nur wenn Wort keine Zahl ist ? .... is_numeric() .... ?




    und jetzt das zweite Problem:

    2) unbekannte Zeichen

    Im String sind Aufzählungen die wahrscheinlich aus Listen erstellt wurden
    und im String kommen dann Sachen an wie:
    $string = 'Ich fahre BMWDas Auto ist immer SauberIch wasche es jeden Tag';


    auf die Erstellung der Strings habe ich keinen Einfluss, daher kann dabei nix ändern

    Eine Lösung für Leerzeichen vor Grossbuchstabe habe ich auf Lima-City gefunden
    Hier: https://www.lima-city.de/thread/profen-ob-innerhalb-wort-grosser-buchstabe

    Aber bei bestimmten Fällen klappt das leider nicht, z.B. .... BMWDas Auto .....

    also bräuchte ich noch eine Regel um dann ein Leerzeichen einzufügen
    wenn der folgende Buchstabe nach mehreren Grossbuchstaben wieder ein Kleinbuchstabe ist
    also so, das aus dem Teil ... BMWDas Auto .... das wird: ... BMW Das Auto ....

    wenn Wort mehrere Grossbuchstaben in folge enthält aber auch noch Kleinbuchstaben
    dann Wort mit Leerzeichen trennen an der Stelle ab 1. Kleinbuchstabe minus 1

    ich hoffe das Problem ist verstanden und jemand kann mir helfen.
    Danke schonmal !


  • in: Passwort Verschlüsselung (nicht md5) ?

    geschrieben von osuche

    ok, verstehe,

    aber macht das Sinn für ein einfaches User-Passwort
    die Verschlüsselung 100te oder 1000de male zu machen ?!

    ich denke doch, dase es alleine schon durch $salt relativ sicher ist
    und kann kaum ent-schlüsselt werden, ausser vielleicht mit nem "SuperComputer",
    aber wer hat schon sowas ...

    ich denke für meine Zwecke wird ein einfaches Verschlüsseln genügen

    entwerder
    $pwcheck = sha1($pwinput . $salt);

    oder halt
    $pwcheck = md5($pwinput . $salt);

    man könnte ja auch zwei $salt machen, eins vor und eins nach dem Klartext-Passwort
    sha1($salt1 . $pwinput . $salt2);

    ist doch bestimmt Ressourcen-Schonender als x-mal wieder und wieder verschlüsseln
    oder ?

    EDIT:
    die Nutzung von SESSION ist ne gute Idee,
    um nicht bei jedem Aufruf das Passwort neu prüfen zu müssen

    Danke

  • in: Passwort Verschlüsselung (nicht md5) ?

    geschrieben von osuche

    naja, wirklich viel Aufwand will ich garnicht betreiben um einfache User-Zugangs-Daten zu verschlüsseln
    es soll nur einfach funktionieren, und bei der Wahrscheinlichkeit kann ich wohl getrost bei md5() bleiben

    aber sha1 werde ich auch mal ausprobieren,
    sooooo viel Aufwand ist das ja auch nicht, wenn ich es so mache

    $pwstored ist das genau wie $pwcheck verschlüsselt gespeicherte Passwort

    $pwinput = $_REQUEST['password']; 
    $salt = 'xY61FuMt7gizR5'; 
    $pwcheck = sha1($pwinput . $salt);
    
    if ($pwcheck == $pwstored) { 
    // ---- OK ---- 
    }


    sonst hatte ich halt einfach md5($pwinput . $salt); anstatt sha1($pwinput . $salt);
    was ja auch OK zu sein scheint, ... oder wie würdet Ihr es (anders) machen ?
    Danke!

    EDIT:
    Danke @hemiolos für das Beispiel, aber warum machst Du eine Schleife mit 100k Schritten
    ohne dann innerhalb der Schleife das $i zu verwenden ... ??? #
    kapier' ich grad garnicht

    warum nicht einfach so

    $res1 = sha1($pwd);
    $res2 = sha1($res1 . sha1($salt . sha1(res1)));
    ...


    und OK ok ... ein Passwort NICHT zu speichern ist kein guter Plan ... eher Sinnfrei ^^
  • in: Passwort Verschlüsselung (nicht md5) ?

    geschrieben von osuche

    Hallo

    ich habe gelesen, dass mei md5() die Möglichkeit besteht,
    dass aus zwei unterschiedlichen Strings der exact gleiche Hash bei raus kommt

    wie kann ich ein Passwort zum Speichern am besten verschlüsseln?

    ... also was sind Alternativen um ein Passwort verschlüsselt zu speichern ?
    Danke!

  • in: XML Daten in Array ?

    geschrieben von osuche

    Danke,
    aber damit erhalte ich nur die erste Ebene als Array, was mich auch nicht wirklich weiter bringt
    die XML Daten sind mehrdimensional ... alle tiefer leigenden Elemente bleiben damit Objekte


    habe ein bischen gegoogelt und folgende 3 Varianten gefunden (Strichwort : "Objekt to Array")

    Variante 1 ... mit foreach() Schleife

    function object2array($obj) {
        $_arr = is_object($obj) ? get_object_vars($obj) : $obj;
        foreach ($_arr as $key => $val) {
            $val = (is_array($val) || is_object($val)) ? object2array($val) : $val;
            $arr[$key] = $val;
        }
        return $arr;
    }



    Variante 2 ... ohne foreach() Schleife

    ohne die Zeile: if (empty($object)) { $object = ''; }
    bekomme ich bei leeren Objekten ein leeres Array,,
    aber mit bekomme ich einen leeren Wert, gefällt mir besser

    function object2array($object) {
      if (is_object($object)) {
        $object = get_object_vars($object);
    	if (empty($object)) { $object = ''; } 
      }
      return is_array($object) ? array_map(__FUNCTION__, $object) : $object;
    }


    Variante 3 ...json_decode von json_encode

    vielleicht ein bischen komisch ....
    und hier bekomme ich bei leeren Objekten als Ergebnis wieder ein leeres Array
    was isch aber nicht haben will ...

    function object2array($object) { 
    return @json_decode(@json_encode($object),1); 
    }



    am besten gefällt (bisher) mir Variante 2

    stellt sich die Frage, welche die "beste" ist (schnellste / performateste)
    und ob es noch andere (bessere) Möglichkeiten gibt

  • in: XML Daten in Array ?

    geschrieben von osuche

    Hallo

    wie bekomme ich XML Daten in ein Array ?

    mit SimpleXML bekomme ich zwar Objekte, aber wie diese in Array übersetzen ?

    oder wie kann ich XML gleich direkt in ein Array laden ?
    Alternative(n) zu SimpleXML ?

Login zum Webhosting ohne Werbung!