Beiträge von cottton

    Zur calc kann ich jetzt nix sagen. Aber Du kannst ja mal prüfen ob alles ok ist wenn
    - du -1 als Seite in die URL eingibst (page)
    - du a, oder irgendwas nicht numerisches als Seite in die URL eingibst (page)
    - du eine sehr große Zahl (zB 11111111111111111111111111) als Seite in die URL eingibst (page)
    - keine seite (URL page=) angegeben wurde
    usw ...

    Der try/catch block ist (default Einstellungen PDO) unnötig/nicht wirksam.
    prepare und execute werfen keine Exceptions (by default).
    Du musst prüfen, ob execute und prepare erfolgreich waren.

    Seh da gerade nicht ganz durch, aber fakt ist, dass die Datei nicht gespeichert wird
    sobald $_POST["Change"] gesetzt ist.

    Würde empfehlen den Ablauf zu ändern. zB:
    laden/einlesen
    auf eingaben reagieren
    speichern
    ausgabe

    Mal an der Quelle angefangen: die db / table
    Was für eine Collation ist auf der Tabelle (oder besser gesagt auf der Spalte)
    Bsp abfrage um das auszulesen:

    SQL
    SELECT 
    	TABLE_NAME, COLUMN_NAME, COLLATION_NAME
    FROM 
    	INFORMATION_SCHEMA.COLUMNS
    WHERE TABLE_NAME = 'dein_tabellenname'

    und -- was wolf eigtl schon gepostet hatte-- hast Du das hier gemacht? -> siehe: Datenbank spinnt mit Umlauten
    letzte post

    Wenn man vorhat eine Seite mit 1000 Unterseiten zu erstellen, oder irgendwann bemerkt, dass es dazu kommen kann,
    dann sollte man ein System nutzen/schrieben (CMS...), oder zumindest eine Art Template-Sys.
    Das macht natürlich nur Sinn, wenn man sich dann auch an die "Regeln" hält.
    Soll heißen: stellt das System eine CSS Klasse .htmlCode bereit, nutzt diese dann aber nicht (zB ganz schlecht inline Style), dann schießt man sich selbst ins Bein.

    Ich bin aber irgendwie immer noch nicht von SEO überzeugt. Mich interessiert mehr das "hörensagen", oder besser "hörenweitersagen" :D

    phpbb - pls!
    Sah ja früher "billig" aus, ist aber inzw. sehr angenehm und vorallem responsive - und das for free.
    woltlab bb gefällt mir zwar vom Grunddesign mehr, aber wenns ums Geld geht .... =)

    Das ist (sehr) interessant, wo doch JS code oft minimized wird.
    Stellt sich mir die Frage: passiert das bei "allen" Browsern?
    denke mal, dass beim parsen Zeilenweise vorgegangen wird. Also pro Zeile eine ~"Einheit".
    Und bei eine riesen Zeile wird die "Einheit" dementsprechend riesig und schwerfällig.

    japp. (Schade :D )
    Die hatte es wohl nicht interessiert. Die Käufer der Placements werden nur Zahlen bekommen habne, wie viele denn abgefragt wurden.
    Aber inzw werden die wissen wollen, wie viele den "nicht geblockt" werden für ihr Geld :D

    Was mich wundert ist, dass es immer noch so viele kack Flashanzeigen gibt.
    Flash sollte doch nu endlich mal Geschichte sein. Gerade bei Anzeigen.
    Und wenn ich mir meine Zahlen ansehe, dann kommt der Großteil über normale Bildanzeigen rein. Also die "nicht störenden" Anzeigen.

    Ja, hast Du richtig verstanden.
    Anzahl der Keys ist beliebig. Die Keys (Typ und Form) sind auch beliebig.
    Wenn ein Array einen angegebenen Key nicht hat, dann würde das Script momentan noch in einen Fehler rennen.
    Aber solange die angegebenen Keys existieren sollte alles laufen:
    Source:

    Zitat

    Fühlt sich meiner Meinung nach richtig an


    Gut, dann sehe ich es mal als (fast) fertig an =)
    Nur noch Das mit den evtl fehlenden Key (Zwecks undefined index ...).

    Moin,
    ich hoffe es wird nicht zu kompliziert.
    Was will: ein Multidimensionales durchlaufen, und dabei das Unter-Array mit dem größten "Gewicht" finden.

    Was für ein Gewicht?


    Per mitgegebenen Keys soll noch festgelegt werden können, welche Keys geprüft werden.
    Die Reihenfolge der mitgegebenen Keys soll außerdem das "Gewicht" dieser Keys festlegen.

    Zwischenfrage:
    kennt jemand einen Algo / Funktion, die genau das o.ä. macht?

    Was ich momentan hab und funktioniert:


    Bsp-Ausgabe:


    Ergebnis: ok.
    key3 gewählt, da alle Felder 1 sind --was mehr als bei allen anderen ist.

    Bsü-Ausgabe 2:


    Ergebnis: ok.
    key2 gewählt, da:
    keys angegeben in Reihenfolge: c, b, a (c hat das größte Gewicht, dann b, dann a) -- also wird auch erst c, dann b, dann a gecheckt
    Bei allen ist c = 1, also kommen erstmal alle in Frage.
    b ist aber nur bei key2 auf 1 gesetzt.
    Auch wenn a bei key3 größer ist, "gewinnt" hier key2, da b mehr Gewicht hat als a.
    (hoffe man versteht mich :) )


    Frage:
    Was mach ich bei Values die > 1 sind. Also zB 0-10?
    Ist das folgende Ergebnis "gefühlt" in Ordnung, oder eher nicht?

    Test script hier (refresh für random values -- klar) Test Script

    Nur zu google als info:
    Wurde wirklich erfolgreich zu-ignoriert:

    Zitat

    Redundante Hostnamen
    Die Property {id} erhält Daten von redundant Hostnamen.
    Gelöst | Details


    (als gelöst maekiert)
    was zeigen die mir das erst an, wenn die das selbst lösen :D

    Ok.
    Die Zeilen:

    PHP
    $o = unserialize($ret['data']);
        // Note: format can change if we need multiple images!
        $image = $o->Images;
        $image['type'] = image_type_to_mime_type($image['type']);
        $image['data'] = base64_encode($image['data']);
        print json_encode($image);


    sagen mir, dass in dem blob-Datensatz in der db:

    Code
    O:7:"Message":8:
        {s:11:" * Headline";s:4:"kfza";s:7:" * Body";s:8:"kfzatest";s:9:" * Images";a:6:
            {s:4:"data";s:4576:"ÿØÿà JFIF ` ` ÿÛ C ÿØÿà JFIF ` ` ÿÛ C ÿØÿà JFIF ` ` ÿÛ C


    ... das offset "data" die Bilddaten enthält -- war ja vorher schon klar.

    Was mich verwirrt ist, dass die Methode fetchMesgImage() (also ~hole/lade Bild)
    die Daten ("data") als base64_encode() (ENcode) zurückgibt.
    Das würde wohl heißen, dass die Bilddaten NICHT encoded wurden, als sie in die db geschrieben wurden.

    Das print lässt vermuten, dass diese Methode die Bilddaten direkt zurückgibt / in das Dokument schreibt.
    Und json_encode() sagt mir, dass die daten wohl für einen ajax call genutzt werden/wurden.

    Kurz: die Bilddaten in der db auf dem offset "data" sind offensichtlich Rohdaten des Bildes.

    Darstellung:
    Du hast geschrieben, dass Du folgendes als array bekommst:


    Dann sollte das hier funktionieren:

    Hallo,

    guck mal hier rein: Den eigenen Code lesbar im Forum präsentieren

    Screenshots sind ungeeignet um Code zu posten.
    Dafür gibts das hier:

    PHP
    $php
    HTML
    <html>


    usw.

    Du hast einen Tippfehler bei der Sql-Query: INSERT INTO ... (;autor, .text,
    PUNKT =)
    Da gehört ein Doppelpunkt hin.
    Deswegen wirft Dir PDO eine Meldung
    "Invalid parameter number: parameter was not defined"
    ~"Anzahl der Paremeter stimt nicht: Parameter wurde nicht definiert" --

    Für jeden Platzhalter ( :platzhaltername ) den Du verwendest, musst Du einen Parameter übergeben.
    In Deinem Fall hier: 3 (:autor, :text, :vorgeschlagene_Uhrzeit_Autor)

    Finden kann ich gerade auch nix.
    Sieh mal nach, ob bei dem, was Du per Ajax zurückbekommst, das hier wenigsten mit dabei ist:
    (in etwa)
    {"login":true,"error":""}
    Das wäre nämlich das Array (json_encode´d)

    Mit den includes (config ect) kommt immer darauf an was darin passiert.
    Wenn es zB nur 10 Zeilen sind, dann wäre es ja keine Ressourcenverschwendung.

    Das mit dem switch sollte funktionieren.

    Zitat

    Du hättest mir auch nicht unbedingt das ganze machen müssen aber auf jeden Fall ein dickes Danke.


    Kein Problem. Wollte das sowieso mal schreiben.
    Hatte das schon mal angefangen, aber das wurde zu umfangreich und war für ein CMS angepasst. Das konnte man unmöglich mal auf "die schnelle" wieder verwenden.
    Hab das Ganze mal in eine Klasse gepackt und ein Bsp erstellt -> Einfache Seitennavigation (PageNav)

    Ich denke mal einfacher kann man die Links nicht erstellen.

    BTW: die Version die ich Dir vorher gegeben hatte war verbuggt :D

    EDIT: ja, die Query sieht gut aus =)

    Sollte so ziemlich einfach sein das Ding einzubauen (was der Sinn des Ganzen war =)
    Nicht von der Methode calc() verwirren lassen. Die ist "uninteressant".
    Ich bin zwar immer der Meinung, dass man den Code verstehen sollte den man nutzt,
    wenn ich aber jetzt anfange die calc() zu erklären, ... das will keiner lesen.

    Sinn:
    Einfach nur beim erstellen eines Objekts die wichtigsten Daten rein schieben,
    anhand der public Methoden die reinen Zahlen (als String) holen,
    und anhand dieser dann Buttons oder Links erstellen.

    EDIT 31 08 15: updated:
    Klasse umbenannt von PageNav in Pagination ,
    (hoffentlich) verständlichere Kommentare hinzugefügt,
    und um zwei Methods erweitert: getQueryOffset() und getQueryLimit()

    Test: Pagination Test

    Kompletter Beispielcode:

    Und als kleine Übersicht:

    Zu der Sache mit dem casten:
    Doch, oder wir meinen nicht das gleiche.


    Du erzwingst also den Typ und bekommst die Value, die für diesen Typ "passt".


    Zu den Abfangen der Fehler:
    error-handling ändern: wenn Du das willst und brauchst.
    Empfehlen würde ich es nicht.

    Also ja, ->prepare und ->execute können ohne try/catch-Block genutzt werden.
    Dafür waren auch die Beispiele - Du bekommst ja keinen Fehler vom catch(), sondern musst die Objekte ($dbh / $stmt) nutzen.

    Wegen der Nav:
    Eigtl ist es ja einfach. ... eigentlich =) Ich tu mich damit aber auch oft schwer.
    Mal angenommen Du hast 1000 Einträge. Dann willst Du
    a) nicht alle 1000 via Sql laden (könnte vorallem php max memory limit übersteigen)
    b) nicht 1000 Buttons/Links in der Nav

    a) hast Du ja schon gelöst - Du fängst bei $start an, und lädst nur $entrysAPage Datensätze.
    b) ist ein bissl Rechnerei:

    (folgendes Script kannst Du als Test direkt starten)