Arne Drews : Fragen darf/kann man ja. Das steht außer Frage. Nur du merkst doch selbst das m.scatello oft auf Bastis Wünsche/Vorstellungen rumhackt.
Beiträge von Stef
-
-
Hey,
m.scatello : Lass es doch bitte sein. Warum hackst du immer auf Bastis Vorstellungen oder Wünschen herum. Wenn er sowas braucht kann er es gerne haben. Du brauchst es ja nicht wie er zu haben. Einer findet es eben sinnvoll, der andere nicht.
-
Hey,
verwende bitte für Verweise die Beispielseite example.com.
Meines Wissens nach wird die Session erst gelöscht wenn der Browser geschlossen wird oder die Session gelöscht/zerstört wird.
Kannst du uns bitte den betroffenen Codeschnipsel zeigen in der das Problem auftritt ?
Gruß,
Stef
-
Hey,
Hm. Das ist aber komisch. Kannst du uns bitte den HTML-Codeteil des ganzen Formulares zeigen. Mit dem button können wir hier wenig anfangen.
Dies ist die Variante mit Javascript :
JavaScript
Alles anzeigen<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Bookmark</title> <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.10/css/all.css" integrity="sha384-+d0P83n9kaQMCwj8F4RJB66tzIwOKmrdb46+porD/OvrJ+37WqIM7UoBtwHO6Nlg" crossorigin="anonymous"> <script> window.onload = function(){ var button = document.getElementById("delete_bookmark"); button.addEventListener("click", deleteBookmark); function deleteBookmark(event){ event.preventDefault(); var bookmarkId = new FormData(document.querySelector("form[name='bookmarkForm']")); var request = new XMLHttpRequest(); request.addEventListener("load", function(){ document.getElementById("ausgabe").innerHTML = this.responseText; }); request.open("POST", "delete-bookmark-statistic.php", true); request.send(bookmarkId); } } </script> </head> <body> <main> <form method="post" name="bookmarkForm"> <input type="hidden" name="bookmarkId" value="1"> <button type="button" id="delete_bookmark" class="delete-bookmark" ><i class="fas fa-bookmark"></i></button> </form> <div id="ausgabe"> </div> </main> </body> </html>Grüße,
Stef
-
Hey,
schön zu hören, dass du es selbst herausgefunden hast.
Kannst du bitte noch deinen Lösungsweg hier posten, damit Personen, welche das gleiche Problem haben hier die Lösung finden.
-
Guten Morgen,
danke für die Beiträge.
Ich finde C, C++ schwierig zu erlernen. PHP ist dagegen einfach.
ZitatDie Entscheidung sollte grundlegend zuerst darauf basieren, was Du vorhast.
Selbst wenn Du sagen würdest, Du willst eine weitere Sprache "aus Spaß" lernen, bleibt dir Frage: Was ist für Dich Spaß.
Da hast du recht. Habe mir jetzt Gedanken gemacht. Auf was ich Lust habe ist neben der Webentwicklung noch die Möglichkeit Apps fürs IPhone oder Android zu erstellen. Dann ist wohl Java die Programmiersprache welche ich wähle.An Python habe ich auch Gedacht und mit Python kann man auch einige guten Sachen programmieren. Ich habe z.b. schon in Python ein Programm erstellt, welches wenn Strom auf einem Punkt ansteht eine Mail an die Zieladresse sendet. War mein erstes Programm/Script welches ich in Python erstellt habe. Danach habe ich noch das Spiel Schere, Stein, Papier programmiert.
ZitatIch arbeite hauptberuflich in der .NET Welt und entwickle überwiegend mit C#, T-SQL und PowerShell.
Ich würde aber deshalb nicht primär auf die Idee kommen, eine größere Webanwendung auf ASP basierend zu entwickeln.
Okay. Wie kamst du denn dann zur Webprogrammierung?
Eine andere Programmiersprache ist was komplett anderes. Es kann auch sein, dass du dich in einer anderen Programmiersprache viel besser zurecht findest als in PHP. Also probiere es einfach aus. Verlieren kannst du eh nichts. Eher was dazu lernen.
Wenn man was anfängt, sollte man dies erst abschließen und dann was anderes anfangen.
Grüße,
Stef
-
Hey,
ich mache mir zurzeit Gedanken darüber eine andere Programmiersprache zu lernen.
Ich habe mir bereits Java, C, C++, Python und Swift angeschaut. Aber irgendwie bin ich mir noch unsicher welche ich verwenden soll.
- Mit Java kann man neben Webentwicklung auch Android-Apps erstellen. Nur dafür braucht man auch Kenntnisse im GUI erstellen. Dies finde ich schon sehr intressant.
- Python hat eine einfache Syntax. Mir wird aber nach dem googlen immer noch nicht so ganz klar, was man damit alles erstellen kann und ob es was bringt.
- C, C++ hat den Nachteil, dass es nicht plattformunabhängig ist.
Habt ihr denn Vorschläge und Ratschläge für mich ?
Grüße,
Stef
-
Hey,
einen eigenen Terminkalender mit einer Eventfunktion zu erstellen ist sehr ansprechend und wird dich schon paar Wochen bis zu Monaten Zeit kosten.
Hast du bereits Ideen wie du es umsetzen möchtest? -
Hey,
ich habe mir mal deinen Code angeschaut.
Ich rate dir, das komplette Layout zu überarbeiten, bzw. das Kontakformular neu zu erstellen.
Das Tabellenlayout ist veraltet und oldschool. Desweiteren benutzt du im PHP Code das @ vor $_POST['']. Was für ein Sinn hat das?
Schau dir aufjedenfall HTML 5 nochmal auf https://www.html-seminar.de/ an. Da lernst du das aktuelle HTML, wie man aktuelle Layouts umsetzt und vieles mehr.
Zitat
Wie könnte ich den Zeichensatz abfragen, der geschickt wird?Das brauchst du nicht. Dies halte ich für unnötig. Benutze wie Arne Drews geschrieben hat eine Mailerklasse. Mit denen bist du das Problem los.
Desweiteren sehe dir auch unser Tutorial für ein Kontaktformular an: Kontaktformular Tutorial
Dieses wird dir Schritt für Schritt erklären wie du ein aktuelles und funktionsfähiges Kontaktformular erstellen kannst.
Grüße,
Stef
-
Hey,
das ist auch eine sehr gute Möglichkeit dies umzusetzen. Sogar besser. Denn da werden gleich die gefundenen Einträge im select als option angezeigt.
Muss man nicht mehr auf einen unnötigen Link klicken.
-
Guten Morgen,
selection : Wie ich sehe hast du das Attribut "method" vergessen. Wenn du die Methode nicht auf POST setzt ist diese automatisch GET und darum funktioniert der Jquery Code auch nicht. Denn da gibst du als Methode POST an.
Grüße,
Stef
-
Hey,
okay. Habe deine Varianten getestet aber bei diesen wird überhaupt nichts mehr ausgegeben.
Ich habe jetzt den Teil, welcher die Linkvalue erfasst und ausgibt in eine Function getan und rufe diese in der Function welche die Response des PHP-Scriptes ausgibt aus. So wie Basti1012.
Mit this.value kann mann trotzdem nicht auf die Value des geklickten Links zugreifen. Aus dem Grund habe ich auf this die Funktion getAttribute ausgeführt. Und nun funktioniert alles.
Dies ist mein Code (Die Abfrage ab wann ein Request gestartet wird habe ich noch nicht hinzugefügt.):
form.html
HTML
Alles anzeigen<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Ajax Request mit Auswertung der Response</title> <script> window.onload = function(){ var searchField = document.getElementById("searchField"); searchField.addEventListener("keyup", sendChars); function sendChars(){ var searchValue = new FormData(document.querySelector('form[name="searchForm"]')); var request = new XMLHttpRequest(); request.addEventListener("load", function(){ document.getElementById("ausgabe").innerHTML = this.responseText; getLinkValue(); }); request.open("POST", "form.php", true); request.send(searchValue); } function getLinkValue(){ var links = document.getElementsByClassName("productLinks"); for(var i = 0; i < links.length; i++){ links[i].addEventListener("click", function(){ var outputField = document.getElementById("word"); var linkValue = this.getAttribute("value"); outputField.setAttribute("value", linkValue); }); } } } </script> </head> <body> <main> <form method="post" name="searchForm"> <label>Search</label> <input type="search" name="searching" id="searchField"> <label>Angeklicktes Wort:</label> <input type="text" id="word"> </form> <div id="ausgabe"> </div> </main> </body> </html>form.php
PHP
Alles anzeigen<?php if(isset($_POST["searching"])){ $searchValue = $_POST["searching"]; try{ $dbv = new PDO("mysql:host=127.0.0.1;dbname=test;charset=utf8", "root", ""); $dbv->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $searchValue = "%" . $searchValue . "%"; $stmt = $dbv->prepare("SELECT productName FROM products WHERE productName LIKE :searchValue "); $stmt->bindParam(":searchValue", $searchValue); $stmt->execute(); $products = $stmt->fetchAll(PDO::FETCH_ASSOC); echo "<ul>"; foreach ($products as $key => $value) { echo "<li><a href='#' class='productLinks' value='". htmlspecialchars($value["productName"]) ."'>" . htmlspecialchars($value["productName"]) . "</a></li>"; } echo "</ul>"; } catch(EXCEPTION $e){ echo "Fehler aufgetreten: " . $e->getMessage(); } }Grüße,
Stef
-
Habe deinen Edit garnicht bemerkt.
Grr....
Mir ist das garnicht aufgefallen...Danke

-
PHP
Alles anzeigen<?php session_start(); if(isset($_POST["logIn"])){ $username = isset($_POST["username"]) ? $_POST["username"] : null; $password = isset($_POST["password"]) ? $_POST["password"] : null; if(empty($username) || empty($password)){ $fehler = "<p class='text-danger text-center'>Bitte füllen Sie alle Felder aus!</p>"; } if(!isset($fehler)){ $pepper = "xxxx"; $password .= $pepper; // DB-Verbindung if(file_exists("../components/config/databaseConnection.php")){ require_once("../components/config/databaseConnection.php"); } try{ $stmt = $dbv->prepare("SELECT userId, benutzername, password, active FROM users WHERE benutzername = :username"); $stmt->bindParam(":username", $username); $stmt->execute(); $data = $stmt->fetch(PDO::FETCH_ASSOC); if($data == 0){ $fehler = "<p class='text-danger text-center'>Ihre Logindaten sind falsch! Versuchen Sie es bitte erneut!</p>"; } else if($data["active"] == 0) { $fehler = "<p class='text-danger text-center'>Sie müssen ihre Registration zuerst über die Bestätigungs-Email abschließen!</p>"; } else if(!password_verify($password, $data["password"])){ $fehler = "<p class='text-danger text-center'>Ihre Logindaten sind falsch! Versuchen Sie es bitte erneut!</p>"; } else{ $_SESSION["userId"] = $data["userId"]; $_SESSION["loggedIn"] = true; header("http://xxx.bplaced.net/pages/mitglieder/home.php"); exit(); } }catch(EXCEPTION $e){ echo "Ein Fehler ist aufgetreten: " . $e->getMessage(); exit(); } } } ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <title>LogIn</title> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous"> </head> <body> <header> <nav class="navbar navbar-expand-lg navbar-light border-bottom border-dark"> <a href="../index.html" class="navbar-brand mr-5 font-weight-bold">xxxx</a> <ul class="navbar-nav"> <li class="nav-item"><a href="../index.html" class="nav-link">Home</a></li> <li class="nav-item"><a href="kontakt.php" class="nav-link">Kontakt</a></li> <li class="nav-item active"><a href="signUp.php" class="nav-link">Login</a></li> </ul> </nav> </header> <main> <section class="container mt-5 mb-5"> <div class="row mb-5"> <div class="col-12"> <h1 class="text-center">Anmeldebereich</h1> </div> </div> <form method="post" class="mb-3"> <div class="form-group"> <label>Ihr Benutzername:</label> <input type="text" name="username" class="form-control"> </div> <div class="form-group mb-5"> <label>Ihr Passwort:</label> <input type="password" name="password" class="form-control"> </div> <button class="btn btn-success form-control" name="logIn">Anmelden!</button> </form> <?php if(isset($fehler)){ echo $fehler; } ?> <div class="row mt-5"> <div class="col-12"> <p>Noch nicht registriert? Dann registrieren Sie sich <a href='registration.php' class="font-weight-bold text-primary">hier</a>.</p> </div> </div> </section> </main> <footer class="text-center mt-5"> <ul class="list-inline mt-2"> <li class="list-inline-item"><a href="datenschutz.php">Datenschutz</a></li> <li class="list-inline-item"><a href="impressum.php">Impressum</a></li> </ul> <p>© xxx 2018</p> </footer> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js" integrity="sha384-cs/chFZiN24E4KMATLdqdvsezGxaGsi4hLGOzlXwp5UZB1LY//20VyM2taTB4QvJ" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js" integrity="sha384-uefMccjFJAIv6A+rW+L4AHf99KvxDjWSu1z9VI8SKNVmz4sk7buKt/6v9KI65qnm" crossorigin="anonymous"></script> </body> </html> -
Hey,
wenn ich es mache bleibe ich auf der Login-Seite und der Code wird nicht mehr augeführt. Das heißt leere Seite.
Kann das garnicht verstehen...
-
Hey,
ich habe eine Registration und ein Login programmiert. Es funktioniert auch alles. Bis auf die Funktion header(); Wenn ich anstatt header was zum Test ausgebe funktioniert die Ausgabe. Kaum entferne ich die Ausgabe und füge header() hinzu funktioniert nichts mehr und Fehler werden auch nicht ausgegeben.
Ich verwende zur Weiterleitung den kompletten Link.Wenn ich den relativen Link nehme kommt immer die Meldung, dass die Datei nicht gefunden wurde. Dies kann aber nicht sein.
Ich habe ein Ordner der mitglieder heißt und in diesem ist die home.php drin. Darum habe ich als relativen Link mitglieder/home.php verwendet.
Das ist mein Code:
PHP
Alles anzeigentry{ $stmt = $dbv->prepare("SELECT userId, benutzername, password, active FROM users WHERE benutzername = :username"); $stmt->bindParam(":username", $username); $stmt->execute(); $data = $stmt->fetch(PDO::FETCH_ASSOC); if($data == 0){ $fehler = "<p class='text-danger text-center'>Ihre Logindaten sind falsch! Versuchen Sie es bitte erneut!</p>"; } else if($data["active"] == 0) { $fehler = "<p class='text-danger text-center'>Sie müssen ihre Registration zuerst über die Bestätigungs-Email abschließen!</p>"; } else if(!password_verify($password, $data["password"])){ $fehler = "<p class='text-danger text-center'>Ihre Logindaten sind falsch! Versuchen Sie es bitte erneut!</p>"; } else{ $_SESSION["userId"] = $data["userId"]; $_SESSION["loggedIn"] = true; header("http://xxx.bplaced.net/pages/mitglieder/home.php"); // hier funktioniert die Weiterleitung nicht } }catch(EXCEPTION $e){ echo "Ein Fehler ist aufgetreten: " . $e->getMessage(); exit(); }Hoffe ihr könnt mir helfen.
Gruß,
Stef
-
Hey,
ich versuche in meine Webseite die Responsive Tabs zu verwenden. Habe auch alles so wie es in der Dokumentation steht eingebunden und erstellt.
Aber leider funktioniert es nicht. Es wird alles ganz normal dargestellt. Nur wenn man die <li> hovert erscheint der cursor Pointer.
Ich weiß nicht warum.
Ich binde die CSS und JS Datei so ein:
Code<!-- Responsive Taps --> <link rel="stylesheet" href="../libraries/responsiveTabs/css/easy-responsive-tabs.css"> <script src="../libraries/responsiveTabs/js/easyResponsiveTabs.js"></script>Und so sieht dann der Code aus:
HTML
Alles anzeigen<div id="tabs"> <ul class="resp-tabs-list"> <li>Tab1</li> <li>Tab2</li> </ul> <div class="resp-tabs-container"> <div>Tab1 Inhalt</div> <div>Tab2 Inhalt</div> </div> </div>Weiß jemand warum das so ist? Habt ihr bereits damit Erfahrungen gesammelt?
Grüße,
Stef
-
-
Hey,
Ich kann es grad nicht testen aber wie ich in dem Code sehe hast du die Semikolons vergessen (;).
Probiere mal dies bitte und melde dich nochmal.
-
Arne Drews : Für mich ist es auch noch interessant. Würde mich freuen.
basti1012 : Genau das wollte ich erreichen. Super gemacht 👍
Du benutzt Jquery AJAX?
Würdest du den Code Posten, bzw mir per PN bitte senden, damit ich es mir mal anschauen kann?
Es ist relativ egal mit welcher Methode man die Daten aus der Datenbank holt. Bei mir ist das Problem das die Ausgabe (Response von der PHP-Datei) nicht im DOM drin ist. Darum funktioniert ja die Intialsierung des Click Events auf die Links nicht.
Aber warum das ist, kann ich so nicht sagen.
Grüße,
Stef