base
portal
Suche:
Forum
Start
Neue Seite erstellen
Titel:
<table> <tr> <font face="arial" size="2"> <td><font face="arial" size="2"> Fügt neue Datensätze zu einer Datenbank hinzu. <p><b>Definition:</b> <p> <table cellpadding="10" width="90%"> <tbody> <tr> <td bgcolor="#f0f0f0"><font size="3"><code>put <i>Werte</i>, <i>Datenbank</i>;</code></font></td> </tr> </tbody> </table> <br> Alle Felder sind optional. Ohne irgendeine Angabe werden die per URL oder einem Formular übergebenen Parameter genommen. <i>Werte</i> geben die zu speichernden Datensätze an und können in verschiedener Form übergeben werden. <i>Datenbank</i> gibt den Namen der Datenbank an. <p><b>Beispiele:</b> <p> <table cellpadding="10" width="90%"> <tbody> <tr> <td bgcolor="#f0f0f0"><font size="3"><code>put ["Name", "Gustav Griebig", "Auto", "BMW"], "kunden";</code></font></td> </tr> </tbody> </table> <br> Schreibt einen neuen Datensatz in die Datenbank "kunden". Das Feld "Name" bekommt den Inhalt "Gustav Griebig" und das Feld "Auto" den Inhalt "BMW". Die einzelnen Werte geben also im Wechsel den Namen eines Feldes und den darin zu speichernden Inhalt an. Es müssen dabei nicht alle vorhandenen Felder angegeben werden (entspricht einem leergelassenen Feld in einem Formular), auch die Reihenfolge der Feldangabe ist egal (zuerst das Auto, dann der Name geht ebenfalls) <p>Man kann damit auch mehrere Datensätze auf einmal hinzufügen, einfach indem man einen Feldnamen, der bereits angegeben wurde wiederholt: <p> <table cellpadding="10" width="90%"> <tbody> <tr> <td bgcolor="#f0f0f0"><font size="3"><code>put ["Name", "Gustav Griebig", "Auto", "BMW", "Name", "Hans Haberl", "Auto", "VW Golf"], "kunden";</code></font></td> </tr> </tbody> </table> <br> Schreibt zwei neue Datensätze in die Datenbank "kunden" und zwar Eintrag 1 mit Namen "Gustav Griebig" und dem Auto "BMW" und Eintrag 2 mit Namen "Hans Haberl" und dem Auto "VW Golf". <p>Aus verschiedenen Gründen ist diese Form für mehrere Datensätze aber nicht sonderlich geeignet. Zum ersten kann es Probleme geben, wenn Felder weggelassen werden und zum zweiten muss man ständig die Feldnamen wiederholen. Besser man verwendet gleich folgende Übergabeart: <p> <table cellpadding="10" width="90%"> <tbody> <tr> <td bgcolor="#f0f0f0"><font size="3"><code>put<br> {<br> Name => ["Hans", "Gisela", "Thomas"],<br> Auto => ["Mercedes", undef, "Toyota"]<br> }, "kunden";</code></font></td> </tr> </tbody> </table> <br> Schreibt drei neue Datensätze in die Datenbank "kunden": Eintrag 1 mit Name "Hans" und Auto "Mercedes", Eintrag 2 mit Name "Gisela" und keinem Eintrag beim Auto und Eintrag 3 mit Name "Thomas" und Auto "Toyota". <p> </p> </font></td> </font> </tr> </table> <!-- Eingefügt als expliziter Hinweis auf Ergebnishash --> <style type="text/css"> <!-- /* ... Hier werden die Formate definiert ... */ body,p,td,ul,li {margin: 4px 0;} p.z_titel {margin: 4px 0; font-size: larger; font-weight: bold;} p.z_beispiel { font-weight: bold;} p.code { border: dashed 1px #606060; margin: 10px 100px 10px 25px; padding: 10px 15px; color: #00A; background-color: #f0f0f0; font-family: monospace;} ul.links {margin-top:2px; margin-bottom:2px;} li.links {margin-top:2px margin-bottom:2px;} .grau {color:#606060;} .klein {font-size: x-small;} .einzug {margin: 0 0 0 20px; padding: 0 0 0 20px;} --> </style> <p class=z_titel>Hinweis / Tipp</p> <p>Wenn Sie mehrere Datenbankaufrufe auf einer Seite haben, dann muss zur Gewährleistung einer reibungslosen Funktion unbedingt die Angabe des Namens für die Ergebnismenge, der sogenannte Ergebnishash, angegeben werden.<br> Nur so kann Baseportal "wissen", welche Daten zu welcher Datenbank gehören.<br> Wenn Sie dies vergessen, werden Sie u.U. nicht reproduzierbare Fehlausgaben bzw. Fehlfunktionen hervorrufen.</p> <p class=grau><span class=klein>(die bei Zusammentreffen mehrerer Faktoren sogar bis zum Datenverlust führen können, zumindest aber das Speichern/Ändern mittels <a href="http://baseportal.de/cgi-bin/baseportal.pl?htx=/doku/wiki&uid=hempelr&sid=4435588.3685979.95587797.9143175&kennung=50">put</a> bzw. <a href="http://baseportal.de/cgi-bin/baseportal.pl?htx=/doku/wiki&uid=hempelr&sid=4435588.3685979.95587797.9143175&kennung=51">mod</a> verhindern)</span> <p>Es ist aus diesem Grund anzuraten, sich anzugewöhnen, den Ergebnishash in jedem Falle beim <a href="http://baseportal.de/cgi-bin/baseportal.pl?htx=/doku/wiki&uid=hempelr&sid=4435588.3685979.95587797.9143175&kennung=48">get</a>, <a href="http://baseportal.de/cgi-bin/baseportal.pl?htx=/doku/wiki&uid=hempelr&sid=4435588.3685979.95587797.9143175&kennung=50">put</a> bzw. <a href="http://baseportal.de/cgi-bin/baseportal.pl?htx=/doku/wiki&uid=hempelr&sid=4435588.3685979.95587797.9143175&kennung=51">mod</a> mit anzugeben. <p class=z_beispiel>Beispiel:</p> <p class=code><code> get "Id==* Farbe=rot", "autos", "roteautos"<br> while(get_next("roteautos"){<br> <span class=einzug>$dsnr = $Id;<span><br> <span class=einzug>mod "Id==$dsnr ["Farbe","dunkelrot"] ", "autos","andersrot";</span><br> } </code></p> <p>Hier ist im <strong>get</strong> "autos" der Datenbankname, "roteautos" der Ergebnishashname<br> im <strong>mod</strong> der Datenbankname ebenfalls "autos" und der Ergebnishashname "andersrot";<p> <p>Übrigens, dieser Scriptteil würde in jedem Datensatz der Datenbank "autos", bei dem im Datenbankfeld Namens "Farbe" der Wert "rot" oder "Rot" steht diesen in den Wert "dunkelrot" ändern<p>
Name:
Passwort:
Stichworte:
Version:
1
2
3 Angebot:
Alle
Nur Miete / Lizenz
Nur Miete / Lizenz professional
Nur Miete
Nur Miete smart + pro
Nur Miete smart + pro / Lizenz
Nur Miete pro
Nur Miete ab pure2, smart2, pro1
Nur Lizenz
Nur Lizenz professional
Nur Kostenlos
Ohne Änderungen zurück zur Seite
©
baseportal
GmbH. Alle Rechte vorbehalten.
powered in 0.01s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!