Telefonbuch - PHP feat. MySql

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Telefonbuch - PHP feat. MySql

    Guten Abend community,

    ich programmiere gerade ein Telefonbuch mit PHP und als Backend MySql.

    Habe nur das Problem das die INSERT INTO -Anweisung nicht ausgeführt wird. Hier nun meine Datein.
    db-connection.php

    Quellcode

    1. <?php
    2. /*DB-Connect START*/
    3. $verbindung = mysql_connect ("localhost", "username", "password")
    4. or die ("keine Verbindung möglich. Bitte Webmaster kontaktieren");
    5. mysql_select_db("test")
    6. or die ("keine Verbindung möglich. Bitte Webmaster kontaktieren");
    7. /*DB-Connect END*/
    8. ?>

    Hier die Eingabeseite

    Quellcode

    1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    2. <html>
    3. <head>
    4. <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    5. <title>Insert title here</title>
    6. </head>
    7. <body>
    8. <h1>Neuer Eintrag</h1>
    9. <form action="EingabeVerarbeitungAusgabe.php" method="post" enctype="multipart/form-data">
    10. <table>
    11. <tr>
    12. <td>Name:</td>
    13. <td><input type="text" name="Name"></input></td>
    14. <td>Vorname:</td>
    15. <td><input type="text" name="Vorname"></input></td>
    16. </tr>
    17. <tr>
    18. <td>Telefon:</td>
    19. <td> <input type="text" name="Telefon"></input></td>
    20. </tr>
    21. <tr>
    22. <td>Mobil:*</td>
    23. <td> <input type="text" name="Mobil"></input></td>
    24. </tr>
    25. <tr>
    26. <td>Fax:*</td>
    27. <td> <input type="text" name="Fax"></input></td>
    28. </tr>
    29. <tr>
    30. <td>Email:*</td>
    31. <td> <input type="text" name="Email"></input></td>
    32. </tr>
    33. <tr>
    34. <td>ICQ:*</td>
    35. <td> <input type="text" name="Icq" size="9"></input></td>
    36. </tr>
    37. <tr>
    38. <td>Geburstag: </td>
    39. <td>
    40. <input type="text" name="Geburtstag" value='01' maxlength='2' size="2"></input>
    41. <input type="text" name="Geburtsmonat" value='01' maxlength='2' size="2"></input>
    42. <input type="text" name="Geburtsjahr" value='1900' maxlength='4' size="4"></input>
    43. </td>
    44. </tr>
    45. <tr>
    46. <td>Strasse:</td>
    47. <td> <input type="text" name="Strasse"></input></td>
    48. <td>Hausnummer: </td>
    49. <td><input type="text" name="Hausnummer" size="3"></input></td>
    50. </tr>
    51. <tr>
    52. <td>Plz:</td>
    53. <td> <input type="text" name="PLZ" size="5" maxlength="5"></input></td>
    54. <td>Wohnort: </td>
    55. <td><input type="text" name="Wohnort"></input></td>
    56. </tr>
    57. <tr>
    58. <td>Vorstand:</td>
    59. <td> <input type="checkbox" name="Vorstand"></input></td>
    60. <td>Ausbilder: </td><td><input type="checkbox" name="Ausbilder"></input></td>
    61. <td></td>
    62. </tr>
    63. <tr>
    64. <td colspan="2"><input type="submit" value="Send"></input></td>
    65. <td colspan="2"><input type="reset" value="Reset"></input></td>
    66. </tr>
    67. </table>
    68. </form>
    69. *Freiwillige Angaben
    70. </body>
    71. </html>
    Alles anzeigen

    Hier die Verarbeitende Datei

    Quellcode

    1. <?php
    2. include "db-connect.php";
    3. $Name= $_POST[Name];
    4. $Vorname= $_POST[Vorname];
    5. $Telefon= $_POST[Telefon];
    6. $Mobil= $_POST[Mobil];
    7. $Fax= $_POST[Fax];
    8. $Plz= $_POST[Plz];
    9. $Wohnort= $_POST[Wohnort];
    10. $Strasse= $_POST[Strasse];
    11. $Hausnummer= $_POST[Hausnummer];
    12. $Email= $_POST[Email];
    13. $Icq= $_POST[Icq];
    14. $Geburtstag= $_POST[Geburtstag];
    15. $Geburtsmonat= $_POST[Geburtsmonat];
    16. $Geburtsjahr= $_POST[Geburtsjahr];
    17. $Vorstand= $_POST[Vorstand];
    18. $Ausbilder= $_POST[Ausbilder];
    19. $id=mysql_fetch_object(mysql_query("SELECT MAX(ID) as max FROM Telefonbuch;"));
    20. $Geburt=$Geburtsjahr."-".$Geburtsmonat."-".$Geburtstag;
    21. $id=$id+1;
    22. mysql_query("INSERT INTO Telefonbuch VALUES (
    23. $id,
    24. $Name,
    25. $Vorname,
    26. $Telefon,
    27. $Mobil,
    28. $Fax,
    29. $Plz,
    30. $Wohnort,
    31. $Strasse,
    32. $Hausnummer,
    33. $Email,
    34. $Icq,
    35. $Geburt,
    36. $Vorstand,
    37. $Ausbilder
    38. );");
    39. ?>
    Alles anzeigen


    Habe bereits einen BSP-Datensatz in der Datenbank mit allen Ausgefüllten Feldern.
    Damits einfach bleibt gehen wir mal davon aus, das alle Felder NULL wären und keins davon NOT NULL.

    Falls sich jmd in der Lage fühlt sich kurz einzulesen...sollte keine 5 min dauern...und die Zeit udn Güte hat mir zu helfen, so tue er dies bitte.

    mfg maxbrauner

    P.S.: Habe breits vor Jahren mal PHP und MySql programmiert....nur ich kanns net mehr wie es aussieht und will es hiermit wieder auffrischen.
    Rechtschreibfehler sind ein Gimmick meiner TAstatur
  • und lasse dir mal die Fehlermeldung ausgeben, bzw den falschen String ausgeben:

    Quellcode

    1. $sql = "INSERT INTO ....";
    2. $result = mysql_query($sql);
    3. if (!$result) {
    4. die('Invalid query: ' . mysql_error().$sql);
    5. }


    außerdem ist deine Programmierung anfällig für SQL Injections.
    Es sollte überall so aussehen: $Name= mysql_real_escape_string($_POST['Name']);

    PS: Willkommen im Forum ihr beiden ;)
  • Hi,

    wenn deine Id in der Tabelle Telefonbuch auf autoincrement steht, dann brauchst du garkeine id beim Insert übergeben.

    Falls nicht, was natürlich komisch wäre, müsstest du die ausgelesene id selber incrementieren, da du sonst für jeden Datensatz die selbe id hast. Und wenn deine id der Primärschlüssel ist, dann ist hier beim Insert Schluss.
  • vince schrieb:

    Hi,

    wenn deine Id in der Tabelle Telefonbuch auf autoincrement steht, dann brauchst du garkeine id beim Insert übergeben.

    Falls nicht, was natürlich komisch wäre, müsstest du die ausgelesene id selber incrementieren, da du sonst für jeden Datensatz die selbe id hast. Und wenn deine id der Primärschlüssel ist, dann ist hier beim Insert Schluss.

    Nein meine ID steht nciht auf Auto_increment, weil wieso soll ich mich darauf verlassen wenn ich selber invrementieren kann udn dies dann mit Sicherheit richtig passiert.

    d0nut schrieb:

    und lasse dir mal die Fehlermeldung ausgeben, bzw den falschen String ausgeben:

    Quellcode

    1. $sql = "INSERT INTO ....";
    2. $result = mysql_query($sql);
    3. if (!$result) {
    4. die('Invalid query: ' . mysql_error().$sql);
    5. }


    außerdem ist deine Programmierung anfällig für SQL Injections.
    Es sollte überall so aussehen: $Name= mysql_real_escape_string($_POST['Name']);

    PS: Willkommen im Forum ihr beiden ;)

    Dank der Fehlermeldung bin ich weitergekommen. Danke!!

    if(close = possible)
    {do it}
    ;)
    Rechtschreibfehler sind ein Gimmick meiner TAstatur
  • maxbrauner schrieb:

    Nein meine ID steht nciht auf Auto_increment, weil wieso soll ich mich darauf verlassen wenn ich selber invrementieren kann udn dies dann mit Sicherheit richtig passiert.


    Du verschwendest Ressourcen durch den Query und es ist immer besser solche Logiken nicht dem Programm sondern der DB zu überlassen. Du darfst MySQL in der Sache auch vertrauen, zumindestens ist es "sicherer" als selber zu inkrementieren ;)
  • maxbrauner schrieb:

    Nein meine ID steht nciht auf Auto_increment, weil wieso soll ich mich darauf verlassen wenn ich selber invrementieren kann udn dies dann mit Sicherheit richtig passiert.


    1. Verlässt du dich bei hundertausend anderen Dingen auch schon auf die Datenbank. Wenn die nicht geht, geht bei deinem Script auch nichts anderes. Wenn die funktioniert, funktioniert auch auto_increment.
    2. Verletzt du das Transaktionskonzept auf ziemlich mieseste Weise: Wenn zwischen deinem SELECT MAX (ID) und dem INSERT INTO auch nur eine Millisekeunde liegt, funktioniert dein Schmuh ab tausend Eintragungen pro Sekunde garantiert nicht mehr, und ansonsten ist es Glücksache. Das selber machen ist absolutes Gebastel und nicht mehrbenutzerfähig. Du müsstest die Datenbank zumindest für Schreibende Zugriffe sperren, zwischen dem Select und dem Insert. Und wenn das machst und dann das Script aus irgendwelchen Gründen abraucht, trägt niemand mehr irgendetwas ein.
    3. Verletzt deine Datenbank wirklich jede Normalform, sogar die Erste (und die gibts eigentlich bei relationealen Datebanken geschenkt :)

    Quellcode

    1. <?php
    2. include "db-connect.php";
    3. $Name= $_POST[Name];
    4. $Vorname= $_POST[Vorname];
    5. $Telefon= $_POST[Telefon];
    6. $Mobil= $_POST[Mobil];
    7. $Fax= $_POST[Fax];
    8. $Plz= $_POST[Plz];
    9. $Wohnort= $_POST[Wohnort];
    10. $Strasse= $_POST[Strasse];
    11. $Hausnummer= $_POST[Hausnummer];
    12. $Email= $_POST[Email];
    13. $Icq= $_POST[Icq];
    14. $Geburtstag= $_POST[Geburtstag];
    15. $Geburtsmonat= $_POST[Geburtsmonat];
    16. $Geburtsjahr= $_POST[Geburtsjahr];
    17. $Vorstand= $_POST[Vorstand];
    18. $Ausbilder= $_POST[Ausbilder];
    19. $id=mysql_fetch_object(mysql_query("SELECT MAX(ID) as max FROM Telefonbuch;"));
    20. $Geburt=$Geburtsjahr."-".$Geburtsmonat."-".$Geburtstag;
    21. $id=$id+1;
    22. ///JETZT ruft eine andere Person aus dem Internet auch dieses Script auf, BEVOR der Nachfolgnde String zusammengesetzt wird und als Query abgeschickt wird. Dann bekommt er als MAX(ID) exakt den gleichen Wert.
    23. mysql_query("INSERT INTO Telefonbuch VALUES (
    24. $id,
    25. $Name,
    26. $Vorname,
    27. $Telefon,
    28. $Mobil,
    29. $Fax,
    30. $Plz,
    31. $Wohnort,
    32. $Strasse,
    33. $Hausnummer,
    34. $Email,
    35. $Icq,
    36. $Geburt,
    37. $Vorstand,
    38. $Ausbilder
    39. );");
    40. ?>
    Alles anzeigen
    ~ mfg SeBa

    Ich beantworte keine PMs zu Computer-/Programmierproblemen. Bitte wendet euch an das entsprechende Forum.

    [Blockierte Grafik: http://i.creativecommons.org/l/by-sa/3.0/80x15.png]
  • SeBa schrieb:

    1. Verlässt du dich bei hundertausend anderen Dingen auch schon auf die Datenbank. Wenn die nicht geht, geht bei deinem Script auch nichts anderes. Wenn die funktioniert, funktioniert auch auto_increment.
    2. Verletzt du das Transaktionskonzept auf ziemlich mieseste Weise: Wenn zwischen deinem SELECT MAX (ID) und dem INSERT INTO auch nur eine Millisekeunde liegt, funktioniert dein Schmuh ab tausend Eintragungen pro Sekunde garantiert nicht mehr, und ansonsten ist es Glücksache. Das selber machen ist absolutes Gebastel und nicht mehrbenutzerfähig. Du müsstest die Datenbank zumindest für Schreibende Zugriffe sperren, zwischen dem Select und dem Insert. Und wenn das machst und dann das Script aus irgendwelchen Gründen abraucht, trägt niemand mehr irgendetwas ein.
    3. Verletzt deine Datenbank wirklich jede Normalform, sogar die Erste (und die gibts eigentlich bei relationealen Datebanken geschenkt :)
    Zu 1. Das sagte mir mein Ausbilder, das man sich besser nicht auf Auto-Increment stellen solltest, sondern dies durch die Software machen solltest.
    Zu 2. Es giibt keine Mehrbenutzerbenutzung auf dieses Formular. Dieses Formular wird nur dem Webmaster zur Verfügung gestellt. Alle Anderen können nur lesen.
    Zu 3. Bei vlt maximal 50 Datensätzen lohnt es sich nicht hier zu normalisieren.

    Zur Info für alle:
    • Dieses Formular steht nur einem Benutzer zur Verfügung.
    • Die Ausgabe können alle sehen.
    • Maximale Anzahl an Datensätzen ist 50.

    Diese Sachen ergaben sich bei einer Anforderungsanalyse. Diese wurde mit dem 1. Vorstizenden und dem Webmaster (me) gemacht. Dieses Telefonbuch wird für Vorstandssdaten und Ausbilderdaten benutzt.

    Mfg maxbrauner
    Rechtschreibfehler sind ein Gimmick meiner TAstatur
  • Nochmal zum autoincrement.
    Auch wenn es für deinen fall funktionieren mag wäre es in der professionellen programmierung ein fataler fehler. Denn damit ließe sich deine anwendung nicht auf einem master master replikationsproblem installieren.
    Es ist immer ratsam features nicht nachzuimplementieren. Die schöpfer von datenbanken haben sich meist etwas dabei gedacht.
    Lg
  • d0nut schrieb:

    Die schöpfer von datenbanken haben sich meist etwas dabei gedacht.
    That's right. Nur da ich Hilfe von meinem Ausbilder bekommen wolte musste ich es so machen. Sobald der Auto_Increment sieht, sieht der schwarz.

    Persönlich hätte ich auch Auto_Increment genommen, wobei die nchträgliche Implementation auch rausfliegen wird wenn alles läuft und ich somit keine Hilfe mehr benötige.

    d0nut schrieb:

    enn damit ließe sich deine anwendung nicht auf einem master master replikationsproblem installieren.
    Ein WAAS??
    Rechtschreibfehler sind ein Gimmick meiner TAstatur
  • Das kannst du deinem Ausbilder ja gerne mal erklären.

    Deine Anwendung würde nicht auf einem Master-Master System laufen.
    Wenn es mehrere Datenbank Master gibt (bei verteilten Anwendungen) dann replizieren diese ihre Daten voneinander.
    Ein Insert vom einen landet also sofort auf dem anderen und umgekehrt.
    Damit das ganze funktioniert gibt es einen sogenannten increment Wert - der eine Master schreibt also nur die IDs 1,3,5,7, ... - der andere schreibt 2,4,6,8, usw

    Und bei einem Master-Slave System (das wird schon bei mittelgroßen Websites verwendet) würde es auch zu Konflikten kommen.
    Denn Master und Slave sind nicht immer synchron.

    Beispiel:
    Der aktuelle Max Wert beim Slave ist die 99.
    Du machst also einen Eintrag in die Datenbank mit der ID Nummer 100.
    Der Eintrag ist aber noch nicht beim Slave angekommen.
    Beim nächsten Eintrag, liest du den Max Wert aus, erhältst wieder die 99, und machst wieder einen Eintrag mit der 100.
    ... und es kracht... ;)
  • Bei 50 Benutzern und nur einem der eingibt kannste auch n Schimpansen hinsetzen der es sich merken soll, oder ein Excelesheet, dafür braucht niemand eine Datenbank. Ich weiß nicht was der Sinn und Zweck deiner Ausbildung sein und wofür der Ausbilder ausbilden soll, aber offensichtlich nichts was mit Datenbanken zu tun hat. Wenn du jemals echte Datenbanken basteln willst, musst du normalisieren und auf Mehrbenutzerbetrieb achten. Außerdem sollte man sich nicht unnötig den Weg zu replizierten Datenbanken versperren, falls man man unerwarteten Erfolg mit der Anwendung hat.
    Außerdem ändern sich Anforderungen ständig. Was ist wenn der Personal- oder Betriebsrat oder sonstwer mitkriegt, dass es die Datenbank gibt und beschlossen wird, dass das Geburtstjahr nicht angezeigt werden darf (wegen Datenschutz und so), das Datum aber schon (wegen Gratulieren und so), dann wirds ungemütlich. Dann darf irgendein Pechvogel (in diesem Fall du), die ganze Kacke von Hand ändern bei jeder einzelnen Person. Oder wenn der Vorstand sich ändert? Kommt ja auch öfter vor, dann darf wieder der Webmaster bei allen dies betrifft den Vorstand ändern. Bei Ausbilder dasselbe, weil du ja da Tippfehler drin haben kannst, geht es nicht mit einem Statement. Hinzukommt die normale Pflege die du sowieso machen musst, wie Adressänderungen etc. Diese Datenbank könnte aufgrund ihres miesen "Designs" ein Fulltime-Job werden.
    ~ mfg SeBa

    Ich beantworte keine PMs zu Computer-/Programmierproblemen. Bitte wendet euch an das entsprechende Forum.

    [Blockierte Grafik: http://i.creativecommons.org/l/by-sa/3.0/80x15.png]
  • Also laufen tuts mittlerweile. Und wieso nicht mit Excelsheet?

    Weils mir aufn Sack geht das der komplette Vorstand un die Ausbilder meines Vereins (wirklicher Verein...e.V.) dauernd meckert das die scheiß listen nicht aktuell sind.....weil die nicht die aktuellsten sind.....zumindest net die die aufn rechner von dennen sind. Deswegen will ich die Liste abschaffen und die sollen sich das Online angucken könne in einem internen privaten Bereich durch die oberste Instanz der Vereinsstruktur (wir sind nur eine Og) abgesegnete Sicherheitsstufe.

    Die Formulare und die Datenbank exisitieren, damit ich oder mein Nachkömmling dies sehr einfach haben.

    Ich habe in mühevoller Kleinarbeit bereits die komplette Homepage auf ne Click'i'Bunti-GUI umgestellt. Mit FCK-Editor, CMS und Co...

    Also wäre es sinnig eine GUI dafür zu haben und dies nicht direkt im Quelltext machen zu müssen/einfach Änderungen zu realisieren.

    MfG maxbrauner

    P.S.: Bin FIAE in Ausbildung
    Rechtschreibfehler sind ein Gimmick meiner TAstatur
  • maxbrauner schrieb:

    Also laufen tuts mittlerweile. Und wieso nicht mit Excelsheet?

    Weils mir aufn Sack geht das der komplette Vorstand un die Ausbilder meines Vereins (wirklicher Verein...e.V.) dauernd meckert das die scheiß listen nicht aktuell sind.....weil die nicht die aktuellsten sind.....zumindest net die die aufn rechner von dennen sind. Deswegen will ich die Liste abschaffen und die sollen sich das Online angucken könne in einem internen privaten Bereich durch die oberste Instanz der Vereinsstruktur (wir sind nur eine Og) abgesegnete Sicherheitsstufe.

    Die Formulare und die Datenbank exisitieren, damit ich oder mein Nachkömmling dies sehr einfach haben.

    Ich habe in mühevoller Kleinarbeit bereits die komplette Homepage auf ne Click'i'Bunti-GUI umgestellt. Mit FCK-Editor, CMS und Co...

    Also wäre es sinnig eine GUI dafür zu haben und dies nicht direkt im Quelltext machen zu müssen/einfach Änderungen zu realisieren.

    MfG maxbrauner

    P.S.: Bin FIAE in Ausbildung


    Jaja, das Problem ist hier ein organisatorisches. Du versuchst das Problem der dezentralen Datenhaltung und unterschiedlichen Versionierung durch ein (sorry) schlechtes Datenbankprogramm zu bewältigen. Tatsächlich könnte ein Datenbankprogramm das sogar, aber in deiner Umsetzung pflegst ja nur du die Daten. Alternativ könntest auch ein Excel-Sheet erstellen,dass in einem freigegeben Ordner auf einem Server liegt und allen Benutzern Leseberechtigungen und dir selber Vollberechtigungen erteilen und anschließend den Link zur Datei kommunizieren. So verwenden alle eine einzige aktuelle Version und der einzige der Änderungen daran vornehmen kann bist du. Du hättest dein abgesegnete Sicherheitsstufen sowie das Problem mit den konkurrierenden Versionen mit minimalem Aufwand erledigt. Die Vorteile liegen ja auf der Hand: Deutlich geringerer Aufwand, du benötigst kein Apache+PHP+MySQL-Server, keine Website basteln, die User könnten die Listen sogar in andere Formate exportieren oder als Datenquelle für Serienbriefe o.ä. verwenden. Nachteil ist auch klar: Excel erlaubt, dass immer nur einer die Datei schreibend öffnet.

    FIAE = Fachinformatiker Anwendungsentwicklung? Und dein Ausbilder? Ist der etwa auch Informatiker?
    ~ mfg SeBa

    Ich beantworte keine PMs zu Computer-/Programmierproblemen. Bitte wendet euch an das entsprechende Forum.

    [Blockierte Grafik: http://i.creativecommons.org/l/by-sa/3.0/80x15.png]
  • SeBa schrieb:

    Jaja, das Problem ist hier ein organisatorisches.
    Richtig!!!

    SeBa schrieb:

    Alternativ könntest auch ein Excel-Sheet erstellen,dass in einem freigegeben Ordner auf einem Server liegt und allen Benutzern Leseberechtigungen und dir selber Vollberechtigungen erteilen und anschließend den Link zur Datei kommunizieren.
    Wir sprechen vom typischen DAU, also fällt diese Option raus.

    SeBa schrieb:

    Die Vorteile liegen ja auf der Hand: Deutlich geringerer Aufwand,
    Wäre korrekt....

    SeBa schrieb:

    du benötigst kein Apache+PHP+MySQL-Server,
    Stellt die oberste Stelle, also sowieso vorhanden und bereits in Benutzung.

    SeBa schrieb:

    keine Website basteln,
    War ideal um meine PHP-Kenntnisse mal wieder aufzufrischen, was auch irgendwo der Sinn war für das Projekt.

    SeBa schrieb:

    die User könnten die Listen sogar in andere Formate exportieren oder als Datenquelle für Serienbriefe o.ä. verwenden.
    Dafür stellt ein Verwaltungsprogramm von ganz oben die Listen bereit, welche nicht von mir, sondern von der "Kasse" bezogen werden.

    SeBa schrieb:

    FIAE = Fachinformatiker Anwendungsentwicklung? Und dein Ausbilder? Ist der etwa auch Informatiker?
    FIAE, jop das ist richtig.
    Unser Ausbilder ist gelernter Strippenzieher von der Telekom...keine Ahnung wie man den Beruf schimpft.
    Der hat auch was aufn Kasten...kein Thema, er weiß es zu vermitteln, aber leider besteht das Problem darin das wir die "Technik" lernen sollen, und somit sozusagen wie Auto-Increment funkt.

    Hoffe ich habe dir weitergeholfen und Sry falls es gräslich aussieht in Sachen formatierung.
    Rechtschreibfehler sind ein Gimmick meiner TAstatur
  • Achso ok, alles klar.

    maxbrauner schrieb:

    Unser Ausbilder ist gelernter Strippenzieher von der Telekom...keine Ahnung wie man den Beruf schimpft.
    Ich glaub eine passendere Bezeichnung gibt es für diese Spezies nicht ;)

    maxbrauner schrieb:

    Der hat auch was aufn Kasten...kein Thema, er weiß es zu vermitteln, aber leider besteht das Problem darin das wir die "Technik" lernen sollen, und somit sozusagen wie Auto-Increment funkt.
    Das ist halt die Sache, genau so funktioniert auto_increment eben nicht, weswegen du hier massiv Gegenwind bekommen hast. Wahrscheinlich wirst du Datenbanken in deiner Ausbildung ja noch kennenlernen, inklusive Transaktionskonzept - ich denke dann wird dir die Tragweite des Problems eher bewusst.
    ~ mfg SeBa

    Ich beantworte keine PMs zu Computer-/Programmierproblemen. Bitte wendet euch an das entsprechende Forum.

    [Blockierte Grafik: http://i.creativecommons.org/l/by-sa/3.0/80x15.png]