Beiträge von Stef

    Hey,

    ich habe nun mit dem SwiftMailer den Mailversand getestet. Wenn ich mir diesen vom github downloade und die Hauptdatei richtig einbinde kommt keine Fehlermeldung. Nun jedoch wurde der SourceCode des SwiftMailers schon auf PHP 7 geupdatet/aktualisiert. Das heißt ich bekomme bei einem FreeWebspace schonmal Fehlermeldungen, da diese noch die PHP 5.5 Version auf deren Server haben.

    olkostbe : Nutze doch einfach den PHP-Mailer. Mit dem hatte ich bisher null Probleme. Dieser bietet dir ebenso viele Funktionen. Ebenso unterstützt er auch noch PHP 5. Versionen. Ein gutes Tutorial zu dem findest du hier: http://www.php-rocks.de/thema/51-html-…-phpmailer.html

    Hey,

    du nutzt wie ich sehe noch die function mysql_real_escape_string() . Diese ist schon lang deprecated (veraltet). Siehe auch http://php.net/manual/de/intro.mysql.php.

    Ich würde die Spalte createdAt, welche die Terminzeit (datetime) beinhaltet, aus der DB auslesen. Dann ne weitere DateTime erstellen welche die aktuelle Zeit besitzt. Nun beide subtrahieren un überprüfen ob die Minute größer als 3 ist. Wenn ja wird das Insert-Statement ausgeführt, wenn nein Ausgabe der Fehlermeldung.

    Hey,

    du machst es dir unnötig kompliziert. Zum subtrahieren 2er Terminzeiten (datetimes) kannst du die DateTime Klasse von PHP mit der Funktion diff() nutzen.

    Dann kannst du das Ergebnis Tagen, Stunden, Minuten, Sekunden zuordnen.

    Ich habe hier mal was erstellt (da muss man noch etwas verbessern, wie z.b. wenn 1 Tag/Stunde/Minute/Sekunde ist nicht die Mehrzahl ausgegebn wird. Aber dies soll nur der Veranschaulichung dienen):

    Hey,

    du kannst mir den Code per PN schicken wenn du willst. Dann kann ich dir ja auch noch paar Ratschläge geben.

    Ich habe mal etwas recherchiert. Du kannst mittels folgendem CSS-Befehl die Scrollbaren verstecken, bzw. unsichtbar machen. Die Scrollfunktion bleibt erhalten.

    CSS
    ::-webkit-scrollbar { 
                display: none; 
            }

    Edit: Bei Firefox funktioniert der Code nicht. In Google Chrome ohne Probleme.

    Schau mal hier: https://github.com/cubiq/iscroll. Villt. hilft es dir weiter.

    Lupus_III :

    Wenn dein Beitrag auf die Frage, wie dies mit einen PopUp zu ermöglichen ist, geht würde ich es wie folgt machen:

    Hey,

    poste mal bitte deinen Codeteil welcher die Slideshow darstellt, inklusive CSS. Sonst können wir dir nicht helfen.

    Aber auf den ersten Blick fällt auf, dass sich die Anzeige der Bilder wiederholt. Dies verhinderst du indem du im CSS bei den Bildern background-repeat: no-repeat; hinzufügst. Dies verhindert, dass das Bild wiederholt angezeigt wird.

    Hey,

    schau mal hier: https://developers.google.com/youtube/player_parameters?hl=de

    Du musst an https://www.youtube.com/ embed hinzufügen damit die Url so aussieht: https://www.youtube.com/embed/.

    Nun musst du noch die Id des Videos hinzufügen. Die entgültige src-Url sieht dann so aus: https://www.youtube.com/embed/JQRn06QlXDw

    Dann sieht ein Iframe für ein Video so aus:

    HTML
    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>Test</title>
    </head>
    <body>
        <iframe width="500" height="300" src="https://www.youtube.com/embed/JQRn06QlXDw"></iframe>
    </body>
    </html>

    Hey,


    warum entwickelst du deine Webseite in jsFiddle, bzw. in einem online Editor? Dies ist sehr unpassend dafür und der falsche Weg.

    Ich rate dir am besten deine Webseite lokal zu erstellen. HTML, CSS und JS-Dateien kannst du auch lokal ausführen.

    Empfehlen kann ich dir dafür den Editor "Brackets". Dabei ist es gut, dass die ganzen Inhalte gleich in der Live-Vorschau der Seite aktualisiert werden.

    Hi,

    Zitat


    Wie kann ich es umsetzen ?

    Indem du ein Formular erstellst. In diesem Formular erstellst du ein input feld mit dem type file. Nun führst du mit PHP die Überprüfung der abgesendeten File durch und wenn alles passt schiebst du diese Datei in den vorhergesehenen Ordner.

    Beispiel:

    HTML
    <form method="post" enctype="multipart/form-data">
         <label for="file">Upload:</label><input type="file" name="datei" id="file" class="inputfile">
    </form>

    Dann würde ich in die DB einfach den Pfad zum Bild einfügen.

    login.php

    startseite.php

    user.php

    Hey,

    schau mal hier http://stef97.bplaced.net/status/ . Da habe ich mal für diesen Zweck alles programmiert von Registration bis Registration abschließen, login und eine eigene Page für jeden User. Bei der Registration wird dem jenigen eine E-Mail gesendet und in dieser ist ein Bestätigungslink zur Aktivierung der Registration vorhanden. Bevor der User diesen Link nicht bestätigt hat, kann er sich nicht anmelden. Zum Mailversand wird der PHP-Mailer verwendet.

    Das einzigste Problem welches ich immer habe ist, dass der Inhalt aus der DB erst nach dem 2ten laden angezeigt wird. Ich frage mich warum das so ist. cottton : Villt. weißt du warum, es tritt bei der user.php auf.

    Der Code dazu:

    registration.php

    registrationLock.php

    Hey,

    Zitat


    Muss ich in der Profile.php auch was ändern?

    Ja! Aufjedenfall. Diese Seite darf so niemals online gehen. Du nimmst die Eingabe des Users und speicherst diese ungefiltert in eine Session. Das ist nicht das Problem. Aber wenn du diese dann ohne Beachtung des Kontextwechsels und der Maskierungen ausgibst dann wird der schädliche Code ausgeführt. Darüberhinaus hast du da auch eine SQL-Injection-Stelle drin.

    Bei XSS-Angriffen über das Formular ist der Post, der von außen kommt, erst dann schädlich wenn man diesen ohne Umwandlung ausgiebt. Denn man führt bei der Ausgabe diesen Code aus. Man muss ebenso generell davon ausgehen, dass die Usereingabe potentiell gefährlich ist und das auch in der Datenbank potentiell gefährliche Daten liegen können.

    Darüberhinaus benutzt du beim Formular POST. Das heißt die abgesendeten Daten des Formulars sind nur in diese POST-Kanal drin.


    Wenn du es mit PDO machst und die Eingaben, welche du durch das Formular erhälst, so behandelst wie ich es oben erwähnt habe würde das ganze so aussehen:

    main.php:

    Für die Anzeige ist dann ein anderes Statement notwendig.

    Du selektierst die Daten aus der DB. Holst diese dann heraus und zeigst diese so wie du es haben willst an

    Zitat

    Und wie kann ich es mit prepare umsetzen

    Etwa so?

    prepare("UPDATE users SET first_name='$first_name', last_name='$last_name', about_you_private='$about_you_private' WHERE email='?'")

    Nein. In einer Query haben variablen nix zu suchen. So könnte er trotzdem eine Injection ausführen. Anstatt was einzugeben, kann er nun alles auf leerstring setzen oder ein paar Buchstaben reinschreiben und dann absenden.

    Eine Query nach Prepared Statement sieht so aus: