Ergebnis 1 bis 4 von 4

Thema: Probleme beim übertragen an eine Mysql Datenbank

  1. #1
    HTML Newbie
    Registriert seit
    07.03.2006
    Beiträge
    2
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Probleme beim übertragen an eine Mysql Datenbank

    Hallo Leute

    Ich habe folgendes Problem, und zwar bastel ich gerade an einem Script mit PHP und Mysql was die aufgabe haben soll daten in eine mysql Tabelle aufzunehmen. Die Daten werden über ein Formular aufgenommen und gespeichert, und bei einer unvollständigen eingabe soll eine Fehlermeldung ausgegeben werden und die vorigen angaben in den feldern gespeichert bleiben.
    Naja dem ist aber leider nicht so.

    Das script reagiert irgendwie immer gleich.

    Es kommt immer eine Erfolgsmeldung wenn die Daten Übermittelt werden solln und auch keine Fehlermeldung bei einer unvollständigen eingabe.Und
    wie solls anders sein natürlich auch kein eintrag in die DB tabelle.
    Das script hänge ich mal an
    Ich muss dazu sagen das das meine erstes Projekt mit PHP und Mysql ist und mein Wissen über die Thematik noch lückenhaft ist .
    Wäreaber klasse wenn hier vielleicht wer weiter weiss
    schonmal besten Dank

    mo

    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    
    <html>
    <head>
    <title>admintest</title>
    </head>
    <body>
    <?php 
    // prüfen ob das formular abgeschickt wurde
    if&#40;$_POST&#91;'flag'&#93;==1&#41;
    
                    &#123;
                    //Leerstellen entfernen
                    $_POST&#91;'artnr'&#93;=trim&#40;$_POST&#91;'artnr'&#93;&#41;;
                    $_POST&#91;'name'&#93;=trim&#40;$_POST&#91;'name'&#93;&#41;;
                    $_POST&#91;'gr'&#93;=trim&#40;$_POST&#91;'gr'&#93;&#41;;
                    $_POST&#91;'beschreibung'&#93;=trim&#40;$_POST&#91;'beschreibung'&#93;&#41;;
                    
                    //evt vorhandenen HTML code entfernen
                    $_POST&#91;'artnr'&#93;=strip_tags&#40;$_POST&#91;'artnr'&#93;&#41;;
                    $_POST&#91;'name'&#93;=strip_tags&#40;$_POST&#91;'name'&#93;&#41;;
                    $_POST&#91;'gr'&#93;=strip_tags&#40;$_POST&#91;'gr'&#93;&#41;;
                    $_POST&#91;'beschreibung'&#93;=strip_tags&#40;$_POST&#91;'beschreibung'&#93;&#41;;
                    
                    //prüfen ob alle felder auusgefüäät worden sind
                    if&#40;!$_POST&#91;'artnr'&#93;&#41;
                        &#123;
                            $_fehler="Bitte geben Sie eine Artikelnummer ein!!
    ";
                            &#125;
                            
                            if&#40;!$_POST&#91;'name'&#93;&#41;
                        &#123;
                            $_fehler="Bitte geben Sie einen namen ein!!
    ";
                            &#125;
                            
                            if&#40;!$_POST&#91;'gr'&#93;&#41;
                        &#123;
                            $_fehler="Bitte geben Sie eine Größe an!!
    ";
                            &#125;
                            
                            if&#40;!$_POST&#91;'beschreibung'&#93;&#41;
                        &#123;
                            $_fehler="Bitte geben Sie eine beschreibung ein!!
    ";
                            &#125;
                            
                            //wenn nicht vollständig TxT ausgabe formatieren und $_POST&#91;'flag'&#93; 
                            //löschen form wird neu angezeigt
                          if&#40;$_fehler&#41;
                            &#123;
                            $meldung="<h2><font color=red>".$fehler."</font></h2>";
                            unset&#40;$_POST&#91;'flag'&#93;&#41;;
                            &#125;            
                            
                            //keine fehler daten in die DB übertragen
                            else
                            &#123;
                            //mysql befehle
                            $tblname="testdb";
                            $sql="INSERT INTO $tblname&#40;artnr,name,gr,beschreibung&#41;
                                  values &#40;'".$_POST&#91;'artnr'&#93;."',
                                        '".$_POST&#91;'name'&#93;."',
                                        '".$_POST&#91;'gr'&#93;."',
                                        '".$_POST&#91;'beschreibung'&#93;."',
                                           &#41;";
                                        
                            //verbinden zur DB
                            $link = mysql_connect&#40;"localhost", "web553", "fumanchu"&#41;;
                            mysql_select_db&#40;"testdb", $link&#41;;
                            mysql_query&#40;$sql, $link&#41;;
                            
                            &#125;
                            
                          $meldung="<h2><font color=red>Der Artikel wurde aufegnommen</font></h2>";
                            
                            //ausgeben der meldung
                            echo $meldung;
                            &#125;
                    
     ?> 
    
    
    <form action="<?php echo $_SERVER&#91;'PHP_SELF'&#93;; ?>" method="post">
    
                <input type="hidden" name="flag" value="1">
                
                
    
    ArtNR.&#58;
    
                <input type="text" name="artnr" value="<?php echo $_POST&#91;'artnr'&#93;; ?>"></p>
                
                
    
    Name&#58;
    
                <input type="text" name="name" value="<?php echo $_POST&#91;'name'&#93;; ?>"></p>
                
                
    
    Gr.
    
                <input type="text" name="gr" value="<?php echo $_POST&#91;'gr'&#93;; ?>"></p>
                
                
    
    Beschreibung
    
                <textarea rows="5" cols="50" name="beschreibung" >
                <?php echo $_POST&#91;'beschreibung'&#93;; ?>
        </textarea>
            </p>
            <input type="submit" value="einstellen">
    </form>
    
    </body>
    </html>
    Hier nochmal ein Bild von der sql Tabelle



    Und noch ein kleines script um die Verbindung zu sql zu testen
    welches folgende Fehlermeldung ausgibt:
    --------------------------------------------------------
    Verbindung wurde aufgebaut
    Konnte Datenbank nicht benutzen.
    Der Grund dafür: Access denied for user: 'web553ATlocalhost' to database 'testdb'
    ---------------------------------------------------------

    und hier das script welches die ausgabe erzeugt

    Einmal die config.php
    Code:
    <?php
        // config.php
        error_reporting&#40;E_ALL&#41;;
    
        define&#40;'MYSQL_HOST',     'localhost'&#41;;
        define&#40;'MYSQL_USER',     'web553'&#41;;
        define&#40;'MYSQL_PASS',     'fumanchu'&#41;;
        define&#40;'MYSQL_DATABASE', 'testdb'&#41;;
    ?>
    und die testsql.php
    Code:
    <?php
      //testsql.php   
     error_reporting&#40;E_ALL&#41;;
    
        include 'config.php';
       
    
        if&#40;!@mysql_connect&#40;MYSQL_HOST, MYSQL_USER, MYSQL_PASS&#41;&#41; &#123;
            echo "Es konnte keine Verbindung aufgebaut werden";
        &#125;
        else
            &#123;
        echo "Verbindung wurde aufgebaut
    \n";
        &#125;
        if&#40;!mysql_select_db&#40;MYSQL_DATABASE&#41;&#41; &#123;
            echo "Konnte Datenbank nicht benutzen.
    \n";
            echo "Der Grund dafür&#58; ".mysql_error&#40;&#41;."\n";
        &#125;
    else
    &#123;
        echo "Die Datenbank wurde ausgewählt";
    &#125;
        
    ?>
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Gast

    Standard

    Code:
             
    
    ArtNR.&#58;
    
             <input type="text" name="artnr" value="<?php echo $_POST&#91;'artnr'&#93;; ?>"></p>
             
             
    
    Name&#58;
    
             <input type="text" name="artnr" value="<?php echo $_POST&#91;'name'&#93;; ?>"></p>
             
             
    
    Gr.
    
             <input type="text" name="artnr" value="<?php echo $_POST&#91;'gr'&#93;; ?>"></p>
    du schreibst alles was du da eintraegst grade in die spalte "artnr".
    So muesste das erstmal richtig heißen, vorrausgesetzt die Spaltennamen im POST stimmen
    Code:
             
    
    ArtNR.&#58;
    
             <input type="text" name="artnr" value="<?php echo $_POST&#91;'artnr'&#93;; ?>"></p>
             
             
    
    Name&#58;
    
             <input type="text" name="name" value="<?php echo $_POST&#91;'name'&#93;; ?>"></p>
             
             
    
    Gr.
    
             <input type="text" name="gr" value="<?php echo $_POST&#91;'gr'&#93;; ?>"></p>

  3. #3
    HTML Newbie
    Themenstarter

    Registriert seit
    07.03.2006
    Beiträge
    2
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Hehe völlig übersehen

    schonmal besten Dank dafür jetzt speichert er schonmal die Eingaben im
    Form. Aber in der DB taucht immer noch nichts auf werde oben mal die DB einstellungen ergänzen.

  4. #4
    Kaiser(in)
    Registriert seit
    09.12.2005
    Alter
    29
    Beiträge
    2.496
    Danke
    1
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Code:
                      $tblname="testdb"; 
                      $sql="INSERT INTO $tblname&#40;artnr,name,gr,beschreibung&#41; 
                            values &#40;'".$_POST&#91;'artnr'&#93;."', 
                               '".$_POST&#91;'name'&#93;."', 
                               '".$_POST&#91;'gr'&#93;."', 
                               '".$_POST&#91;'beschreibung'&#93;."', 
                               now&#40;&#41;&#41;";
    now() speichert doch das aktuelle datum oder ?
    also hast du 5 sachen, die du in 4 felder eintragen möchtest und das geht ja nicht; d.h. du musst das dtumsfeld noch mit angeben oder now() weglassen
    mfg
    PS: kann auch sein, dass es daran nicht liegt, aber ich vermute es einfach mal
    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

Ähnliche Themen

  1. Probleme beim Verbinden mit Datenbank
    Von csigg im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 10
    Letzter Beitrag: 29.05.2007, 17:43
  2. Mysql Datenbank, eine kleine Frage!!
    Von im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 12.04.2007, 15:57
  3. MySQL Tabellen von Datenbank zu Datenbank umziehen
    Von hkp im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 16
    Letzter Beitrag: 02.09.2006, 16:14
  4. Probleme beim Einspielen der Datenbank
    Von Don-King im Forum Webanwendungen - Webapplikationen
    Antworten: 10
    Letzter Beitrag: 23.04.2006, 17:16
  5. Warum hab ich keine Rechte eine MySql Datenbank..
    Von im Forum Webhoster - Provider - (free) Webspace - Server - Domain
    Antworten: 1
    Letzter Beitrag: 25.12.2005, 21:49

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •