Was ich etwas vermisst habe, echte Array-queryParameter. ?array[]=value1&array[]=value2
@c1zztm4502 күн бұрын
sehr schön <3
@ProgrammierenMarioКүн бұрын
Danke dir 🙂
@yt70422 күн бұрын
Sehe gerade, dass ich das Video von letzte Woche verpasst habe. Generatoren kannte ich bisher nur aus Python. Wusste gar nicht, dass es die in JS inzwischen auch gibt. Die Vorteile liegen , wie weiter unten bereits erwähnt, eigentlich in der Iteration größerer Datenbestände, wegen der effizienten Speicherverwaltung. Man kann mit .next() auch einen Wert an yield übergeben. Das wäre vielleicht noch erwähnenswert gewesen.
@ProgrammierenMarioКүн бұрын
Danke dir für deine Ergänzenden Worte 👍
@treiberbender14872 күн бұрын
Super Vortrag.
@andreask.2912 күн бұрын
Informativ und verständlich wie immer. Vielen Dank und schönes Wochenende! 🍕☕️🙂 ⭐️⭐️⭐️⭐️⭐️
@ProgrammierenMario2 күн бұрын
Herzlichen Dank und schönes Wochenende ✌️
@yt70422 күн бұрын
Ich dachte jetzt geht es mit PHP weiter. 🙂 Schönes WE!
@ProgrammierenMario2 күн бұрын
Du meinst es wird mal Zeit für PHP? Ist das denn nicht schon aus der Mode und längst tot? 😆 Schönes Wochenende ✌️
@yt70422 күн бұрын
@@ProgrammierenMario Ja, es ist schon mehrfach totgesagt worden und lebt immer noch, zum Leidwesen einiger Hater. :-)
@bnshiy2 күн бұрын
0:50 Wie kommst du auf "Versandunternehmen"? Das ergibt kein Sinn.
@ProgrammierenMario2 күн бұрын
Natürlich handelt es sich hier um das Netzwerkprotokoll. Da es neben HTTP(S) auch andere wie TCP und mehr gibt, welche bestimmen wie die Datenpakete übers Netzwerk übertragen werden und nach welchen Regeln dies geschieht, war es mein persönlicher Spaß es als Versandunternehmen zu bezeichnen. Nächstes mal esse ich einfach weniger Gummibärchen, versprochen ✌️😅
@yt70422 күн бұрын
Er meinte wohl den Versandweg. Kann schon mal passieren wenn man es ungeschnitten veröffentlicht.
@mauriceOverIP2 күн бұрын
Super Sache! Danke für den Tipp und die Erklärungen
@ProgrammierenMario2 күн бұрын
Gerne geschehen ✌️
@mauriceOverIP2 күн бұрын
Klasse, vielen Dank! Prima und umfänglich erklärt ✌
@NOT_SPEAK_2 күн бұрын
😢
@Manfred-1232 күн бұрын
❓
@ProgrammierenMarioКүн бұрын
🤷♂️
@m42ears3 күн бұрын
Vor dem Anschauen: Ok, 45 Minuten. Ich nehme Dich beim Wort. Hast Du mich belogen, ist das Abo weg! Und komm nicht hinterher und sag dass es an mir lag. Dein Titel ist da sehr eindeutig und stellt keinerlei Bedingung fuer den Lernerfolg. Nach dem Anschauen: Abo weg!
@ProgrammierenMario3 күн бұрын
Ich danke dir!
@RG-SK1354 күн бұрын
Auch ein prima Video von Dir :-). Die Umstellung ging schnell und das erste kleine php-Script lief erfolgreich per VS Code bzw. LiveServer. Allerdings bekomme ich es nicht hin, beim Aufruf einer php-Seite Parameter zu übergeben. Nicht über Fetch und auch nicht als Anhängsel hinter der URL (z. B. ...?parameter="test"). Bei der php-Datei kommt aber nichts an. Führe ich den Code über meinen Webspace aus, klappt alles prima. Woran kann das liegen?
@ProgrammierenMario3 күн бұрын
Die Extension bietet dir leider keinen vollwertigen PHP Server. Du kannst aber einen mit Five Server verbinden --> github.com/yandeu/five-server-with-php Hoffe das hilft dir erstmal weiter...
@rotsch4444 күн бұрын
Mario Du bist der Beste
@enantiodromia7 күн бұрын
Die Infos mögen korrekt sein. Aber...
@beelzebubonline24237 күн бұрын
Nutzt express.js dieses Feature? Die .next()-Syntax kommt mir bekannt vor.
@MMNewmedia8 күн бұрын
Tolles Video! Der wichtige Hintergrund von Generatoren wird gar nicht genannt. Generatoren sind eine Iterator Implementierung. Iteratoren haben einen großartigen Vorteil in puncto Speicherbelegung. Die hier in den Kommentaren geschriebene Type Writer Funktion von @nobie-art benutzt ein Array Objekt zum Halten aller Zeichen der übergebenen Zeichenkette. Dieses Array belegt den Speicher für alle Zeichen der übergebenen Zeichenkette. Bei einem Generator (Iterator Implementierung) wird im direkten Vergleich lediglich der Speicher für das aktuelle Zeichen der übergebenen Zeichenkette belegt. Gut, bei derart kleinen Zeichenketten macht das noch keinen Unterschied. Aber ... Lange Rede kurzer Sinn: Generatoren arbeiten sehr viel performanter und Ressourcen-schonender. Das macht sich vor allem bei der Abarbeitung von großen Datenmengen bemerkbar. Schon mal eine CSV Datei mit JavaScript eingelesen und verarbeitet? ;)
@ProgrammierenMario7 күн бұрын
Vielen herzlichen Dank für deine ausführliche Ergänzung ✌️🙂
@WunderProgrammation-j6x9 күн бұрын
Gut erklärt. Wichtige sind die Erklärungen zwischen den Zeilen ( Flexbox gilt nur für das nächste unter Element! ) Einwandfrei. Und wie hat mein Opa gesagt früher:"Man muss och ma'n Fersn aus de Botn ziehn!"🍺
@ProgrammierenMario8 күн бұрын
Vielen Dank ✌️
@hirnzircus9 күн бұрын
Super. Wieder was gelernt. Danke 🙏🏻
@psychedelic-chi9 күн бұрын
Kannte ich auch noch nicht, interessant, danke dir!
@raphii50989 күн бұрын
Bitte Bitte mehr php Videos Mario 😊
@nobie-art9 күн бұрын
Eigentlich sehr gutes und informatives Video! 😁 Aber, diesen Typewriter Effekt den du gemacht hast, kann man doch simpler machen. Ich finde es so auf jedenfall übersichtlicher und finde ich, dass es vielleicht bei so einem Video gut wäre, ein Beispiel zu zeigen, wo man wirklich merkt, dass dieses Feature etwas bringt! let element = document.getElementById("element"); let text = "Happy Coding"; let textArr = []; for(let char of text){ textArr.push(char); } let counter = 0; const intervalID = setInterval(() => { if(counter <= textArr.length - 1){ element.innerText += textArr[counter]; }else{ clearInterval(intervalID); } counter++; }, 200)
@andreask.2919 күн бұрын
Natürlich kann man den Tywritereffekt auch ohne Generator machen. Man bedient sich bei Erklärvideos einfacher Beispiele, damit sie für die meisten und insbesondere für Anfänger verständlich sind. 🙂
@nobie-art9 күн бұрын
@@andreask.291 Ja, aber ich finde, dass es in so einem Tutorial gut wäre, den Sinn zu erklären und ein Beispiel zu zeigen, wo man auch merkt, dass dieses Feature etwas erleichtert und relevant ist.
@psychedelic-chi9 күн бұрын
Deine Lösung ist auch nice, doch denke ich ging es ihm weniger um den Typewriter Effekt, als vielmehr um den Lerneffekt der Generatoren ;-
@ProgrammierenMario9 күн бұрын
Wie schon bereits kommentiert ging es mir nicht um die Animation an sich. Mir ging es auch weniger darum eine einfache Sache noch einfacher zu machen. Für mich war es persönlich Wichtig überhaupt mal das Thema zu zeigen. Ich sah bisher selbst sehr wenig darüber, was ich schade finde. Vielen Dank euch allen fürs kommentieren und austauschen ✌️🙂
@nobie-art9 күн бұрын
@@ProgrammierenMario Ja, alles klar 😁
@andreask.2919 күн бұрын
Super! Vielen Dank. 👏 Ich freue mich jede Woche über Deine Videos und habe bis jetzt jedesmal was dazugelernt. Meine Bewertung wie immer: ⭐️⭐️⭐️⭐️⭐️ 5/5
@ProgrammierenMario9 күн бұрын
Das freut mich sehr! Danke dir. Schönes Wochenende ✌️🙂
@mariofritsche48899 күн бұрын
Kannst Du mal ein Video zum Bau eines Kontaktformular machen, welches auch relativ Spam-Sicher ist?
@ProgrammierenMario7 күн бұрын
Ich schreibe es mir gerne mal als Idee auf 👍
@rikscc9 күн бұрын
Woansinn
@thomasr.558610 күн бұрын
Hallo Mario, habe Astrowebsite #2 von Dir nachzubauen. Klappte eigentlich alles ziemlich gut, aber da Iconify Icons sich geändert hat, klappt es mit der Erstellung der NavigationSocialBar nicht, wird nichts angezeigt. Habe alle im Netz gefundene Ideen umgesetzt, habe es bis jetzt nicht hinbekommen. Nach der Installation von Astro Icon, muss man jetzt Iconsets installieren z.b. mit rpm i -D @iconify-json/mdi. Kann damit auch mit <Icon name="mdi:home> wird es im Layout.astro angezeigt. Hast einen Tip...
@thomasr.55869 күн бұрын
Sorry, habe alles hinbekommen....
@ProgrammierenMario8 күн бұрын
Sehr gut... schreib doch gerne woran es gelegen hat ✌️
@r3obin64913 күн бұрын
Hey Mario, vielen Dank für das Video, das trifft genau mein Interesse und ich schätze besonders deinen unaufgeregten Stil. Eine Frage: Ich hab wegen der Lizenzkosten meine PHPStorm-Version erstmal (zulässig) auf 2022.2.5 "eingefroren". Reicht die aus für die Einrichtung der hier empfohlenen Entwicklungsumgebung?
@ProgrammierenMario12 күн бұрын
Ich schätze das es mit deiner Fallback-Lizenz funktioniert. Nur wenn du das DDEV-Plugin verwenden möchtest könnte es bestimmt Probleme geben. Aber im Video zeige ich ja wie du es manuell konfigurierst. Am Ende musst du es einfach mal testen ✌️
@KarlAlfredRoemer13 күн бұрын
Ui ganz schön kompliziert.
@WunderProgrammation-j6x13 күн бұрын
Tip Top das Video Mario. Super Arbeit sehr verständlich und absolut gut rüber gebracht. Nicht nur der Content ist wichtig sonder auch der der Ihn rüberbringt. Das passt wie Bratwurst mit Bautzner Senf. MUAHAHAHAHAH
@ProgrammierenMario13 күн бұрын
Dein "Senf" ist das Beste was ich seit langem gelesen habe 😂
@LianeSchmuhl13 күн бұрын
ich bin wie immer begeistert ... danke für das tolle Video
@ProgrammierenMario13 күн бұрын
Das freut mich sehr!
@Webdesigner_Mario14 күн бұрын
Hab dahingehen mal eine Frage funktioniert es auch unter MacOS
@ProgrammierenMario13 күн бұрын
Ja natürlich. Das WSL2 kannst du da einfach weglassen da du ja eine hervorragende Shell bereits hast. Einfach DDEV für Mac installieren und los geht's ✌️
@WunderProgrammation-j6x14 күн бұрын
Danke!
@ProgrammierenMario14 күн бұрын
Bitte und Vielen Dank 🙂
@NeverCodeAlone14 күн бұрын
Danke, DDEV ist wirklich toll.
@ProgrammierenMario13 күн бұрын
Absolut!
@LianeSchmuhl14 күн бұрын
gerade dein Video entdeckt, Klasse ... wie immer ... noch eine Frage ... Emojis? ist das eine VSCode Erweiterung und wenn ja, welche?
@ProgrammierenMario14 күн бұрын
Danke! Für die Emojis unter Windows einfach "WINDOWS-TASTE + ." drücken. Geht so gut wie überall ✌️🙂
@LianeSchmuhl14 күн бұрын
Danke für die schnelle Antwort ... ich folge dir schon eine Weile, alle Videos die ich bisher gesehen habe, waren echt super ... am Bersten finde ich deine 'Kaffee'-Einlagen 😉 ... nein, natürlich nicht, macht dich aber um so sympathischer ... vielen Dank für deine Videos und ich freue mich schon auf die Nächsten ... gerne weiter so ...
@thec620914 күн бұрын
Kannst auch alles mit VSC machen und das ist kostenlos.
@ProgrammierenMario14 күн бұрын
Danke dir ✌️🙂
@NeverCodeAlone14 күн бұрын
...und es verbraucht deutlich weniger Energie und ist Open Source ;)
@yt70422 күн бұрын
@@NeverCodeAlone Dafür hat es aber Defizite im Refactoring. Außerdem gibt es ja eine IntelliJ Community Version, wobei ich jetzt nicht genau weiß welche Einschränkungen diese hat.
@NeverCodeAlone2 күн бұрын
@@yt7042 was für Defizite?
@NeverCodeAlone3 сағат бұрын
@@yt7042 was für Defizite sollen das denn sein? Copilot hat eine Feature Differenz von ca. 6 Monaten, auch weil sie ihre eigene AI nach vorne bringen wollen. Das finde ich deutlich dramatischer.
@rikscc15 күн бұрын
Hallo Mario. Das funktioniert einfach nicht: a.querySelector(`*${dataField}`).dataset['value']; Es kommt immer die Meldung: '*title' is not a valid selector. Soll sich das auf eine KLasse oder das data- beziehen?
@ProgrammierenMario13 күн бұрын
Das bezieht sich auf das data Attribut. Schau dir mal mein Beispiel hier ganau an --> github.com/ProgrammierenM/data-sort-handler/blob/master/dataSortHandler.js In Zeile 23 wird die Funktion aufgerufen und bei Zeile 26 findest du den Parameter der gesetzt wird.
@rikscc12 күн бұрын
Danke, ich führe mir das noch mal zu Gemüte. Das ist echt harter Stoff.
@marcelmeyer802715 күн бұрын
Super Tutorial, vielen Dank dafür!
@ProgrammierenMario14 күн бұрын
Sehr gerne!
@heinrichschiller467316 күн бұрын
Schönes Video. Aber mir kommt mein Setup, bestehend aus Docker und VS Code weniger kompliziert vor :)
@ProgrammierenMario14 күн бұрын
Der Aspekt das DDEV sich automatisch um die Erstellung und Verwaltung der Docker Container kümmert, macht das ganze eigentlich einfacher 😅
@heinrichschiller467313 күн бұрын
@@ProgrammierenMario okay. DDEV habe ich noch gar nicht ausprobiert.
@m4rIo8816 күн бұрын
Wir arbeiten komplett unter Linux. Vs Code mit dem Symfony Framework. Lässt sich eigentlich auch sehr gut arbeiten. So haben alle ihre Arbeitsweise. 😊
@ProgrammierenMario14 күн бұрын
👍
@yt704216 күн бұрын
Danke für das Video. Ich dachte eigentlich du machst nur FE. IMHO gab es bisher keinen BE Content. Schönes WE!
@ProgrammierenMario16 күн бұрын
Überwiegend FE ja. Würde dir auch BE Content gefallen? Schönes Wochenende ✌️
@yt704216 күн бұрын
@@ProgrammierenMario Ja, auf alle Fälle. Da musst du aber deine Komfortzone verlassen. :-)
@klausfox396816 күн бұрын
Hallo Mario, ich höre und sehe dir gerne zu. Habe schon viel von dir gelernt. Ich würde mich sehr freuen, wenn du mai ein schönes PHP-Tutorial machen würdest.
@ProgrammierenMario16 күн бұрын
Da muss ich mal schauen wie ich das unterbringe. Ist ja ein Komplexes Thema. Zumindest hätte ich Lust drauf 🙂
@gerselent16 күн бұрын
Sehr schönes Video, bin aber mal ehrlich. Bin ein alter Pinguin, sprich ein LinuxUser, hab unter Windows mal das WSL installiert. Muss aber echt sagen, ist nicht meins ;D Da nehme ich lieber ein Mini-PC und installier da ein Ubuntu Server drauf und da halt Docker und alles was dazu gehört. Aber jeder soll halt so machen, wie er es am liebsten mag ;D
@ProgrammierenMario16 күн бұрын
Ja das geht natürlich auch. Ist ja im Prinzip das gleiche nur das beides auf unterschiedlichen Systemen läuft. 👍
@kernel0verflow91916 күн бұрын
Super Video, ich wollte endlich mal tiefer in PHP eintauchen und wusste nicht genau wie ich mein Setup optimal einrichten sollte. Dein Video kam wie gerufen :)
@ProgrammierenMario16 күн бұрын
Na dann passt das ja 👍
@andreask.29116 күн бұрын
👍 Mensch Mario, bin mal wieder total sprachlos. Vielen Dank für Deine Erklärungen und Empfehlungen zu diesem spannenden Thema. 👏👏👏 Machst Du noch eine Fortsetzung? 🧐 Würde anhand von Beispielen gerne erfahren, wie sich das ganze nutzen lässt. ☕️🍕🧀🍞+🍌 PS: Schönes Wochenende!
@ProgrammierenMario16 күн бұрын
Ja mal schauen 👀 Dir auch ein schönes Wochenende ✌️
@ThomasFux16 күн бұрын
Wirklich sehr gut Erklärt in einer lockeren Art und Weise.👏
@ProgrammierenMario16 күн бұрын
Freut mich ✌️
@rebarius17 күн бұрын
Das ist für mich nicht bullet proof das Parent Element dafür auszunutzen…das wäre für mich in komplexen Anwendungen nicht zu gebrauchen. Ich bevorzuge es auf !!element.onclick zu hören, ob ein listener dadrauf gelegt ist oder nicht und dann eben ein event zu registrieren. Aber das Thema hat sich eh erübrigt, sobald man mit einem stabilen Framework arbeitet :)
@m42ears17 күн бұрын
Danke fuer das Video! Welches Theme benutzt du da?
Edit: Hier geht's um Event Delegation. Für Anfänger, denen das Prinzip nicht klar ist: so geht es auch ohne: Das .box Element triggern und nicht das parent Element Dann geht hier getElementsByClassName da das ne live list ist und keine static. so würde es gehen: const allBoxes = document.getElementsByClassName('box'); const addBoxButton = document.querySelector('#add-a-box'); const boxContainer = document.querySelector('#box-container'); const addClickEventListener = (box) => { box.addEventListener('click', (event) => { event.target.classList.toggle('green'); }); }; for (const box of allBoxes) { addClickEventListener(box); } addBoxButton.addEventListener('click', () => { const newBox = document.createElement('div'); newBox.classList.add('box'); boxContainer.append(newBox); addClickEventListener(newBox); });
@ProgrammierenMario14 күн бұрын
Nun, ich persönlich wollte aber das parent Element triggern und das ganze dann an das Kindelement delegieren. Ist eigentlich eine gängige Praxis. Es gibt Probleme da ist eine direkte Lösung nicht immer die Beste, daher "elegant" (um die Ecke denken). Es ist auch nicht nötig manuell für jedes einzelne Element einen eigenen EventListener zu setzen. Es gibt mehrere Wege und Lösungen. Und deine Funktioniert natürlich auch. Wollte aber eine Alternative zeigen. ✌️🙂
@programmierMentor14 күн бұрын
@@ProgrammierenMario Stimmt, da hast du natürlich vollkommen recht. Event Delegation ist natürlich der bessere Ansatz. Aber ob das so einem Anfänger in der Art klar ist, wie du es machst, ohne zu zeigen, wie es ohne geht und ohne das Konzept zu erklären ... Aber muss auch ehrlich sagen, hab das Video nicht ganz angeschaut, nur durchgesteppt ... sorry dafür. Dein Code ist natürlich besser als meiner wenn man es auf ED bezieht. ✌😊