kostenloser Webspace werbefrei: lima-city


Suche auf lima-city

  • in: String kürzen aber nich Wort abschneiden

    geschrieben von feedping

    Hallo

    ich würde die zweite Methode nehmen, .... ohne preg_replace()

    das soll man ja - vwenn möglich - vermeiden / Alternative nutzen

    ... liest man so
  • in: Open-Source Projekt anlegen

    geschrieben von feedping

    Hallo

    ich möchte für ein PHP-Script als öffentliches Open-Source Projekt anlegen
    es soll alle Entwicklungen abbilden (Archiv alter Versionen) und User (Besucher) sollen Bugs melden,
    Feedback geben und eigene Erweiterungen entwickeln können.


    und frage mich, welche Plattform dafür am geeignsten ist

    ich kenne vom Suchen sourceforge.net http://sourceforge.net oder github.com https://github.com
    habe aber keine Ahnung wie es dort "drinnen" aussieht

    Welches "System" sollte man als "Anfänger" nutzen ... oder ein ganz anderes "System" ???

    Empfehlungen ? ... Erfahrungen ?

    und gibt es dabei eswas Besonderes zu beachten, z.B. Versionen, Lizenz, Kosten, etc. ?

  • in: Grösse der Ausgabe einer Seite in Bytes

    geschrieben von feedping

    Na ok

    dann so
    <?php
    $pagedata = file_get_contents('http://..../..../dateiname.php');
    
    $tmp_file_name = $mypath.'\test.txt';
    $handle = fopen($tmp_file_name,"w", 0666);
    fwrite($handle,$pagedata);
    fclose($handle);
    
    $pagesize = filesize ($tmp_file_name); 
    echo "Groesse: ". $pagesize." Byte"; 
    
    ?>


    aber gibt es wirklich keine PHP interne Funktion,
    um die Byte-Größe der Ausgabe zu ermitteln?

    hab ich graf entdeckt: bei SelfHTML Forum

    ... Ergo liefert strlen() tatsächlich die Länge des Strings in Bytes ... .


    stimmt diese Aussage? ... ist von 2006 ^^oOo ...
    dann wäre $pagesize = strlen($pagedata); ja "einfacher" ... ?

  • in: Array-Daten in MySQL speichern

    geschrieben von feedping

    Hallo

    Danke, ...ahhhhhh .... MySQl JOIN ...

    das kann ich nutzen um FollowBack zu finden, also IDs in beiden Tabellen gleich

    $result1 = mysql_query("
     SELECT * FROM ".$db_tabelle1.", ".$db_tabelle2." 
     WHERE ".$db_tabelle1.".followerr_id = ".$db_tabelle2.".friends_id 
     AND ".$db_tabelle1.".user_id = '".$loguser_id."'
    ");


    doch noch was gelernt ...JOINs :) .... Prima für das Suchen von "Verbindungen"

    Aber einen Sinn für die Updates der neuen IDs sehe ich darin noch keinen,
    denn dazu müsste ich je "Typ" (Follower und Friends) jewels noch eine "neue" Tabelle anlegen
    um dort die jeweils neuen IDs aus der API-Abfrage zu speichern.
    ... und dann für neue IDs mit = und für verlorene IDs mit <> Abfragen
    und dann diese zwei Ergebnisse wieder in den ursprünglichen Tabellen speichern,
    .... klingt für mich nach deutlich mehr Aufwand als zweimal die Array durchzugehen
    würde schon funktionieren .... fragt sich nur was performanter / schneller ist ....
    weil bei jedem Aufruf die "neuen" Tabellen mit bis zu tausenden IDs zu füllen oOo...
    oder ist das deutlich besser als ein foreach() mit sooooo vielen Werten zum Vergleich

    mal anders gefragt (ohne MySQL) ... wie vergleicht man am besten 2 einfache Arrays
    und bekommt als Ergebnis 2 neue Arrays, eins mit den neuen Einträgen und das Andere
    mit den raus-geflogenen Werten.

    ich finde meine Methode schon garnicht schlecht, hier als BSP:

    $array1 = ("100", "101", "102", "104", "106", "108");   // --- aus API 
    $array2 = ("100", "102", "103", "104", "107");          // --- aus DB 
    
    $new_data = array();  
    foreach( $array1 as $item1) {
      if (!in_array( $item1 , $array2 ) { $new_data[] = $item1;  } 
    }
    
    $lost_data = array();  
    foreach( $array2 as $item2) {
      if (!in_array( $item2 , $array1 ) { $lost_data[] = $item2;  } 
    } 
    
    - - - - - - - - - - - - 
    Ergebnis: (für DB Updates) 
    
    $new_data = array ("101", "106", "108");  
    $lost_data = array ("103", "107");


    aber vielleicht gehts DAS ja auch besser
    :)

  • in: Grösse der Ausgabe einer Seite in Bytes

    geschrieben von feedping

    Danke

    mit ob_get_length scheint es ja schon zu funktionieren
    aber ich brauche die Ausgabe der Byte-Grösse von einer anderen Datei aus

    ich habe jetzt einfach die Datei per http aufgerufen,
    dann bekomme ich die HTML-Ausgabe und nicht den PHP-Code
    und dann mb_strlen() ... stimmt doch dann so, oder ?

    <?php
    $pagedata = file_get_contents('http://..../..../dateiname.php');
    $pagesize = mb_strlen($pagedata, 'latin1'); 
    echo "Groesse: ". $pagesize." Byte"; 
    ?>


    @xxbashxx
    Den Wert brauche ich für Tests, bei welchen Aufrufen (mit Parameter)
    ob die Ausgabe eine bestimmte mindest-Größe hat ....

    @hemiolos
    mit Ausgabe meine ich den HTML-Code, der vom Script bei Aufruf erzeugt wird.
    also ohne Bilder oder ander Medien, länge des HTML-Quellcode Strings

  • in: Array-Daten in MySQL speichern

    geschrieben von feedping

    Hallo

    ja, das soll ein Analysetool werden. So wie hunderte andere auch.
    Man wird ja wohl noch für seinen eigenen Account eine Analyse machen dürfen,
    und genau dafür wird die Twitter-API ja auch bereit gestellt, um Tools damit zu bauen
    Alle Daten die man mit der API abfragen kann sind öffentlich für jederman zugänglich
    es wird ja auch nichts gehackt oder ausgespäht, nur Verfügbares abgefragt und sortiert.

    Auch gibt es doch schon viele solcher Tools, auch "deutsche", also kann ich mir nicht vorstellen dass das ein rechtliches Problem darstellt, wenn man als User seine eigenen Verbindungen in Twitter analysiert. Ich gehe also davon aus, das Twitter-Analysen grundsätzlich erlaubt sind. Sollte jemand andere Informationen dazu kennen, dann kann er diese gerne hier als Antwort screiben.

    zu Daten (Sruktur):
    ... völlig egal welche Twitter-interne Datenbank dahinter steht, die API-Abfrage liefert ein json Code (Objekt/Array) und genau darum geht es mir bei diesem Übungs-Projekt: externe Daten (Objekt/Array) in eigener Datenbank (MySQL) verwalten.

    zu Sicherheit:
    ... deswegen gibt es ja das oAuth Verfahren von Twitter, bei dem der User authentifizieren muss, um das Tool zu nutzen,

    zu Traffic:
    ... da hat Twitter schon dran gedacht und jeder Applikation ein Limit der Abfragen (pro Stunde) gesetzt.



    muss ja auch nicht Twitter sein, aber ich will was mit ner API üben, da bringt CMS wenig
    also bleib ich erstmal dran ... mir gehts jetzt nicht um das Warum, sondern um das Wie

    zur ursprünglichen Frage

    egal wie ich es angehe, muss ich doch immer beide Arrays komplett durchgehen ?
    oder?

    $array1 = (IDs aus der API) ... (API-Response mit REST API / curl / json )
    $array2 = (IDs aus der DB) ... (aus Abrage mit SELECT * WHERE user_id = $logged_in_userid )

    das sind 2 einfache Arrays mit fortlaufenden Keys und der Nummer im Vaue
    dann ..

    foreach( $array1 as $item1) {
    if (!in_array( $item1 , $array2 ) { ... Aktion für Neue ID .. } // neue ID ist nicht in DB-Array
    }

    foreach( $array2 as $item2) {
    if (!in_array( $item2 , $array1 ) { ... Aktion für Lost ID .. } // die ID aus DB ist nicht in API-Response
    }

    So hab ich zuwest die Abfrage aller IDs aus der DB (um $array2 zu bekommen)
    und dann für jede einzele Aktion Insert bzw. Update (oder Delete) Abfragen


    Wie soll das direkt über eine MySQl Abfrage mit WHERE gehen ? also ohne $array2 zu holen?
    Sorry, ich kapiers nicht wie? ... Code-Beispiel .. nur so grob ?!
    Danke



  • in: Array-Daten in MySQL speichern

    geschrieben von feedping

    Hallo

    also im Klartext geht es darum eine kleines TwitterTool zu basteln, das denke ich durchaus "legal" ist
    deren Haupt-Aufgabe soll es sein, neue und verlorene Follower / Friends zu erkennen
    und herauszufnden, welche User, denen man folgt auch zurück-folgen.

    Beim ersten Login (Twitter oAuth) werden alle Follower-IDs und alle Friends-IDs per Twitter API abgeholt und gespeichert.
    es gibt (derzeit) zwei Tabellen: (mySQL)
    a) id - UserID - FollowerID ... (id = Auto Increment)
    b) id - UserID - FriendsID

    Bei jedem weiteren Aufrufen werden dann wieder diese IDs von der API abgeholt und mit dem Bestand in der DB verglichen.
    Neue Follower oder Friends werden hinzugefügt, verlorene Folower und Friends werden gelöscht

    Per Script (PHP) soll der User dann abfragen können:
    - welche anderen User (seit letzem Aufruf) neue Follower bzw. neue Friends (=following) sind
    - welche der Follower (seit letzem Aufruf) entfolgt sind bzw. auch welche Freunde weg sind
    - welche anderen User zurück-folgen (Followed by User and Following back)
    - usw...

    Wenn das erstmal gut funktioniert, ist geplant das mit weitern Listen zu erweitern,
    z.B. Listen, Favoriten, Retweets, Erwähnungen, etc.
    ... aber erstmal die Grundfunktion

    Script läuft bisher etwa so: (am Bsp Follower, analog dann auch Friends, etc)
    ... bei mir jetzt noch mit einem Array und serialize()

    if ( USER logged with in oAuth) {
    if ( USER startet Aktion) {
    + hole neue Follower IDs von API = Array a
    + hole alte Follower IDs von DB = Array b
    + vergleiche IDs (if in_array) neue IDs an Array b anfügen, verlorene aus Array b raus werfen
    + speichere neues Array b in DB
    }
    }

    das klappt zwar, aber stimmt schon, mit einzelnen Zeilen könnte man viel mehr "machen"
    zu jeder ID ein Datum und ein Status dazu
    - dann kann man Abfragen machen wie "neue Follower seit Datum x" ... besser als seit letzem Aufruf
    - oder auch UnFollowed User in der DB behalten und mit entsprechendem Status merkieren
    - oder auch haerausfinden wenn jemand der schonmal entfolgt ist wieder folgt ... etc.

    Habe eine zweite Version angefangen, die mit einzelnen Zeilen arbeitet (ohne serialize)
    aber da hab ich noch nicht kapiert, wie ich die Vergleiche Neue / Alte IDs anders machen kann
    bisher vergleiche ich mit if ( in_array ) ... für Beispiele mit WHERE wäre ich sehr dankbar

    a) id - UserID - FollowerID - Datum - Status
    b) id - UserID - FriendsID - Datum - Status

    foreach ( IDs aus der API-Abfrage ) {
    INSERT INTO ... (wenn ID noch nicht in DB ist) ...
    UPDATE ... SET status = 'lost' ... (wenn ID nicht mehr in Array aus API ist)
    ...
    }
    ... ?

    So jetzt wisst Ihr "etwas" genauer, was ich machen will, und könnt mir vielleicht besser helfen.

    Zur Info: ja ich weiss, das es schon ähnliche Twitter Tools gibt aber ich nutze das quasi als Übung, um PHP und MySQL etwas besser kennen zu lernen. Mit MySQL habe ich noch sehr wenig Erfahrung. Und zum Einsatz kommen soll das Script nur privat für mich und für einige Freunde. Und was gibts besseres als ein konkretes Projekt, um daran zu lernen, Twitter API deshalb, weil es ganz gut dokumentiert ist und immer Daten "zum damit arbeiten" liefert, also Ideal zum üben.


  • in: Grösse der Ausgabe einer Seite in Bytes

    geschrieben von feedping

    Hallo

    Wie ermittle ich die Größe der Ausgabe einer Seite in Byte
    nicht die Dateigröße, sondern nur die der Ausgabe

    wenn ich ein Script habe, das zwar 10 KB PHP-Quellcode hat (Dateigröße)
    aber am Ende nur ein einziges Wort ausgibt, sind das ja bestimmt nur wenige Byte

    Dateigröße ist klar ... $groesse = filesize($datei); ...
    aber wie kann ich die Byte-Größe der Ausgabe ermittel?

    mit fopen oder so bekomme ich ja auch wieder den Quellcode ?!
    (PS: die datei liegt im gleichen Server/Webspace/Verzeichnis)
    ?
  • in: Array-Daten in MySQL speichern

    geschrieben von feedping

    oki, danke

    Edit:

    habe jetzt mal beide methoden ausprobiert
    und wenn ich das mit einem grossen array als serialize in TEXT speichere
    dann ist die Script-Laufzeit deutlich geringer, als hunderte einzelne Zeilen durchgehen

    ok, in einzelnen Zeilen ist es vielleicht "ordenlicher" aber wohl lagsamer (für meinen Zweck)
    weil ich so anstatt einem MySQL query soviele brauche, wie es Änderungen gibt.

    ... oder ich mache da grundsätzlich was falsch ... oOo ...


    noch ne Frage zum Daten-Typ
    die Nummern sind bis zu 20 Zeichen lang (String aus Zahlen)

    was ist da besser , bigint oder varchar ?
    Danke!
  • in: Array-Daten in MySQL speichern

    geschrieben von feedping

    Hallo

    Ich habe ein Script, das für jeden User eine gewisse Anzahl an SubIDs verwaltet
    also zu jedem User gibt es eine variierende Zahl an dazugehörigen Nummern (SubIDs)

    Bei Aufruf des Scripts wird eine aktuelle Liste der Nummern (SubIDs) geladen (als Array)
    dann soll geprüft werden, welche Veränderungen der frisch geladenen Nummern (SubIDs)
    zum Bestand in der DB gibt ... ob neue dazu gekommen sind oder ob alte nicht mehr aktuell sind.

    jetzt die Frage:

    ist es besser die einzelnen Nummern als eigene DB-Einträge (Zeilen) zu speichern ?
    dann hätte ich direkten Zugriff und kann sie schnell einzeln entfernen / neue INSERTen

    oder alle in einen grossen TEXT Block mit serialize() um das ganze Array zu speichern ?
    dann muss ich für Änderungen immer das ganze Array (alle Nummern) durchgehen

    Manche User haben bis zu 5000 Nummern zugewiesen, andere nur 10

    wie würdet Ihr es machen? einzelne Zeilen je Nummer oder alle in einem Block?
    Danke
  • in: eMail Validierung pattern ?

    geschrieben von feedping

    Hallo

    ok, habs getestet, geht also doch

    es ist nur etwas verwirrend, das bei erfolgreicher Validierung kein bool(true) zurückgegeben wird,
    sondern der String der eMail-Adresse aber bei nicht validen eMails kommt ein bool(false) ...

    also man muss nur "richtig herum" abfragen, dann klappt's damit.
    nicht if ( $emailcheck === true ) ... sondern if ( $emailcheck === false ) ....

    (!)
    ABER ... bei Tests bekomme ich damit auch name@example.d als korrekte eMail
    (beachte .d .... also nur ein Buchstabe TLD) ... doch nicht sooooo ganz ...

    DANKE an fabo für die Funktion, die scheint mir unter all den Varianten,
    die ich bisher so gesehen habe, die bisher beste zu sein ...
  • in: eMail Validierung pattern ?

    geschrieben von feedping

    chatter schrieb:
    Wenn die Filter-Erweiterung zur Verfügung steht (wie bei Lima) kannst du einfach die Funktion filter_var() benutzen.

    $ergebnis = filter_var ('test@example.com', FILTER_VALIDATE_EMAIL);


    hatte ich auch schon gefunden,
    aber da steht im Kommentar;

    FILTER_VALIDATE_EMAIL allows incomplete e-mail addresses to be validated, for examle john@gmail will validate as a proper e-mail address.


    hier: http://www.php.net/manual/de/filter.filters.validate.php#101468

    also ist das ja eher Sinnlos.

  • in: eMail Validierung pattern ?

    geschrieben von feedping

    Hallo
    wie soll ich eine eMail prüfen,

    ist es mitt eregi oder mit preg_match besser / richtig ?

    wie lautet der richtige / beste pattern ?

    "^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$"
    
    "^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$"
    
    "/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/"
    
    ...usw.


    welcher "ausdruck" ist der "beste" ... es gibt da ja sooo viele Beispiele ...

  • in: PHP mysql_real_escape_string bringt leere Variable

    geschrieben von feedping

    Hallo
    für Nutzung von mysql_real_escape_string muss vorher die MySQL Verbindung stehen!

    hast Du den Quellcode schnmal überprüft, ob Du Dir mit mysql_real_escape_string auch die "richtige" Variable umwandelst?

    wenn es bei allen anderen Strings funktioniert, nur nei name nicht, kann es fast nur ein Schreibfehler sein.

    if ( !empty($_REQUEST['name']) ) {
    $dername = trim($_REQUEST['name']);
    ...
    $dername = mysql_real_escape_string($name);
    }

    so würde $dername leer sein, weil $name nicht definiert ist
    also:
    $dername = mysql_real_escape_string($dername);

    sonst scheib mal den Quellcode hier, dann sehen wir mehr
  • in: Alles geht wieder - Langweilig!

    geschrieben von feedping

    pixilab schrieb:
    Der reinste Serverstrofismus hier :-)

    Den Fehler kannte ich noch garnicht, ich hoffe die finden den Server wieder^^.
    503 Service Unavailable
    No server is available to handle this request.


    immernoch verschollen ?

    schade, in der Zeit in der ich hier dabei bin ist der Webspace mehr Down als da
    da kann man machen nix ... will ja nicht mekern bei gratis, aber leicht frustrierend so
    :(
  • in: Prüfen ob URL ein RSS-Feed ist

    geschrieben von feedping

    ok aber ich bekomme damit ein leeres Objekt ?!

    $doc  = new DOMDocument();
    $doc->load($url);
    $channels = $doc->getElementsByTagName("channel");
    
    echo "<pre>\r\n";
    print_r($channels); 
    echo "</pre>\r\n";


    was ist da falsch?

    habe es auch mal versucht mit simplexml_load_file($url);

    da bekomme ich Daten im Objekt, aber auch nicht alle
    alles was innerhalb <![CDATA[ ........... ]]> steht bleibt ein leeres Objekt?
    ?
  • in: Prüfen ob URL ein RSS-Feed ist

    geschrieben von feedping

    Hallo

    wie kann ich am einfachsten (schnell) prüfen
    ob es sich bei einer übermittelten URL um einen RSS-Feed handelt ?

    also nicht ob überhaupt erreichbar, sondern ob der Inhalt im RSS / Atom Format ist?
    ?
  • in: mysql abfrage where not ?

    geschrieben von feedping

    trueweb schrieb:
    SQL kennt nur <>


    Danke,

    habe nochmal gesucht und doch noch was gefunden

    ... WHERE status NOT IN ('publish')


    damit kann man auch gleich mehrere Werte als Bedingung angeben

    ... WHERE status NOT IN ('publish', 'abgelaufen')


    denn mit <> hab ich so das Gefühl, dass das eigentlich für Zahlen-Werte ist,
    weniger geeignet für Strings, oder?
  • in: Problem mit Grafik Datei

    geschrieben von feedping

    Hallo
    versuch doch mal ohne das führende Slash /

    #oben {
    background:url(images/oben.jpg);
    width: 865px;
    padding-right: 30px;
    }

    oder die komplette URL (http-Adresse) zum Bild

    background:url(http://metin35.lima-city.de/images/oben.jpg);

    PS: meine Güte hat Dein Quellcode viele Leerzeilen oOo
  • in: Umfrage mit HTML bzw JavaScript erstellen

    geschrieben von feedping

    yorecords schrieb:
    Also werd ich mich wohl entweder mit PHP beschäftigen müssen, oder darauf verzichten..


    ja, definitiv brauchst Du zum senden einer eMail PHP, wird mit JS wohl nicht funktionieren

    auch würde ich mir nicht bei jedem Absenden des Formulars ne E-Mail kommen lassen
    sondern die Ergebnisse speichern (mysql oder file-basiert)
    so kannst Du eine Auswertung dieser Ergebnisse gleich "kompakt" ansehen
    und ggfs Dir einmal am Tag auch den neuesten Stand zusenden.

    Hinweis: Wenn Du mit ein Formular Online stellt, das dann mit PHP weiter-verarbeitet werden soll,
    dann bitte nicht ganz die Sicherheit vergessen (Filter der Eingabe, etc)

    Tip: googeln nach "php umfrage tutorial" oder "php umfrage erstellen" oder ähnliches
    BSP ... Umfrage mit PHP selbst für Leute die sich 0 auskennen! .... etc.
    oder gleich ein "fertiges" kleines PHP-Script für Umfragen verwenden oder Umfragen
    aber auch dabei gilt: die sind oft nur rudimentär, ohne Sicherheit
    (hacking-Schutz durch Eingabe-Filter, etc.)
    Viel Erfolg!
  • in: div element auf webseite paltzieren mit css

    geschrieben von feedping

    my-free-farm schrieb:
    ... einfach mal mit mehreren browsern probieren und ihr seht die unterschiede


    Hallo

    oft hilft es, wenn man bei den umgebenden (aüßeren) DIVs die margin und padding auf 0 setzt

    entweder alle CSS-Klassen einzeln, oder glaobal für alle Elemente mit *

    * { 
    margin:0px; padding:0px; border: 0px;
    }


    und dann jedem Element das Abstände haben soll, auch wieder welche zuweisen (Listen, etc.)

    PS: Deine Klasse li ist vom Namen her nicht so gut gewählt,
    bzw. Du kannst die Listen-Elemente direkt ansprechen

    .links li { }

    und nicht (wie bei Dir) mit eingeschobener .li CSS-Klasse ( ist sonst sehr verwirrend)

    .links .li li { }

    oder?
  • in: mysql abfrage where not ?

    geschrieben von feedping

    Hallo

    gibt es für MySQL eine Abfrage um die Datensätze zu finden,
    wo bei einem Feld kein bestimmter Wert drin steht ?

    WHERE NOT habe ich ausprobiert, ging aber leider nicht.

    ich möchte z.B. alle Datensätze, die im Feld status nicht den Wert 'publish' haben
    geht das? und wie geht das?
    Danke

Login zum Webhosting ohne Werbung!