Ergebnis 1 bis 4 von 4

Thema: Problem mit MySql Eintrag

  1. #1
    TP-Newbie
    Registriert seit
    May 2012
    Beiträge
    3

    Problem mit MySql Eintrag

    hallo,
    ich habe folgendes formular in meine index.html eingebaut:

    HTML-Code:
    <form id="input" method="get" action="input_script.php">					
    			<fieldset id="input">
                    	  <span id="sprytextfield1">
               	  <label for="place">Ort</label>
                	<input type="text" name="place" id="place" />
                	<span class="textfieldRequiredMsg"></span></span><p>
                  <span id="spryselect1">
                  <label for="day">Tag</label>
                  <select name="day" id="day">
                  <option class="1">1</option>
                  <option class="1">2</option>
                  <option class="1">3</option>
                  </select>
                  <span class="selectRequiredMsg"></span></span> 
                  <span id="spryselect2">
                    <label for="month">Monat</label>
                    <select name="month" id="month">
                    <option class="January">Januar</option>
                    <option class="January">Februar</option>
                    <option class="January">März</option>           
                    </select>
                    <span class="selectRequiredMsg"></span></span>
                      <span id="spryselect3">
                      <label for="year">Jahr</label>
                      <select name="year" id="year">
                      <option class="2012">2012</option>
                      <option class="2012">2013</option>
                      </select>
                      <span class="selectRequiredMsg"></span></span><p>
                  <span id="sprytextarea1">
                        <label for="arrangement">Vereinbarung</label><p>
                        <textarea name="arrangement" id="arrangement" cols="45" rows="5"></textarea>
                        <span class="textareaRequiredMsg"></span></span><p>
                          <span id="sprytextfield2">
                          <label for="email">Email</label>
                          <input type="text" name="email" id="email" />
                          <span class="textfieldRequiredMsg"></span></span>
                        <li class="buttons" >
                    <input type="hidden" name="form_id" value="submit" />
                    <input id="saveForm" class="button_text" type="submit" name="submit" value="Inserieren" />
                  </li>
              </fieldset>
    		</form>
    und das folgende php script dazu verfasst um datenbankeinträge zu bekommen:

    PHP-Code:
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Unbenanntes Dokument</title>
    </head>

    <body>
    <?php
      $db 
    mysql_connect("localhost","root","");
      
    $sqlab "INSERT INTO input";
      
    $sqlab .= "(Stadt, Tag, Monat, Jahr, Stunde, Minute, Vereinbarung) values";
      
    $sqlab .= "('$_POST[place]',' $_POST[day]','$_POST[month]',' $_POST[year]', '$_POST[hour]')', '$_POST[minute]', '$_POST[arrangement]')";
      
    mysql_select_db("test");
      
    mysql_query($sqlab);
    ?>
    </body>
    </html>
    fülle ich das formular aus, so werden jedoch keine daten in die datenbank übertragen. hat jemand vielleicht eine lösung oder sieht den fehler?

    vielen dank für eure hilfe!
    simon

  2. #2
    TP-Moderator Avatar von maxi89
    Registriert seit
    Nov 2004
    Ort
    Mulpe an der Tunke
    Beiträge
    2.584
    Ich sehe mehrere Fehler ;-)
    Um die exakte Fehlermeldung von MySQL zu bekommen, ändere dein mysql_query(..) bitte folgendermaßen ab:

    PHP-Code:
    mysql_query($sqlab) or die('Ojemine: '.mysql_error()); 
    Dann sollte bei einem SQL-Fehler das Script an der Stelle abbrechen und die Fehlermeldung ausgeben.
    Ich vermute aber derzeit, dass der Fehler bei dir hauptsächlich daran liegt, dass die POST-Variablen nicht aufgelöst werden, da du in PHP keine Arrays einfach so innerhalb eines Strings einbinden kannst.
    Zu deutsch heißt das:

    Statt
    PHP-Code:
    $variable " $array['Feld1'] , $array['Feld2'] "
    musst du so arbeiten:
    PHP-Code:
    $variable $array['Feld1']." , ".$array['Feld2']; 
    Du siehst schon an den anderen Textfarben dass PHP dies unterschiedlich interpretiert!

    Was für Datentypen hast du denn für die Tabellenfelder in der Datenbank verwendet? Du machst nämlich zusätzlich noch den Fehler, dass du zwischen den einfachen Anführungszeichen und der POST-Variable ein Leerzeichen. Damit erzählst du MySQL, dass du da wirklich ein Leerzeichen am Anfang haben willst, was z.B. bei Datentypen die nur aus Zahlen bestehen dürfen (INT, DOUBLE, FLOAT...) zu einem Fehler führt - denn du versuchst ja ein Leerzeichen mit zu speichern.

    Generell ist da leider viel Kuddelmuddel, aber das sollte sich beheben lassen
    Du kannst ja mal einen Screenshot von der MySQL-Tabelle hochladen, dann kann ich dir besser helfen.

  3. #3
    TP-Newbie
    Registriert seit
    May 2012
    Beiträge
    3
    vielen dank für deine antwort!
    ich habe es heute nochmal neu geschrieben, den html code vereinfacht indem ich keine spry-elemente genommen habe (ist das besser?)
    zudem habe ich die php scripte umgeschrieben, welches ich auf anderen seiten gelesen habe, dass dies so überschaulicher sei.

    HTML-Code:
    <form action="added.php" method="get" id="form">
              <p>
              <label>Tag<select name="tag" id="tag"></select>
              </label>
              <label>Monat<select name="monat" id="monat"></select>
              </label>
              <label>Jahr<select name="jahr" id="jahr"></select>
              </label>
              </p>
              <p>
              <label>Stunde<select name="stunde" id="stunde"></select>
              </label>
              <label>Minute<select name="minute" id="minute"></select>
              </label>
              </p>
              <td colspan="2" align="center"><input name="" type="submit" value="Add"></td>
          </form>
    die dazugehörigen php:

    generelle connect.php
    PHP-Code:
    <?php
    $hostname
    ='localhost'
    $user='root'
    $pass='';
    $dbase='test';
    $connection mysql_connect("$hostname" "$user" "$pass"
    or die (
    "Can't connect to MySQL");
    $db mysql_select_db($dbase $connection) or die ("Can't select database.");
    ?>
    und added.php
    PHP-Code:
    <?php

    include("connect.php");

    $tag trim(mysql_real_escape_string($_GET["tag"]));
    $monat trim(mysql_real_escape_string($_GET["monat"]));
    $jahr trim(mysql_real_escape_string($_GET["jahr"]));
    $stunde trim(mysql_real_escape_string($_GET["stunde"]));
    $minute trim(mysql_real_escape_string($_GET["minute"]));

    $results mysql_query("INSERT INTO search (id,tag,monat,jahr,stunde,minute)
    VALUES ('',  '$tag', '$monat', '$jahr', '$stunde', '$minute')"
    );

    if(
    $results) { echo "Successfully Added"; } else { die('Invalid query: '.mysql_error()); }

    ?>
    tabelle search in datenbank test:
    Name:  tabelle.PNG
Hits: 67
Größe:  48,1 KB
    ist dies besser? und wenn ja wo liegt dort der fehler?
    vielen vielen dank nochmal für die hilfe!
    Geändert von simon22 (05.05.2012 um 18:30 Uhr)

  4. #4
    TP-Newbie
    Registriert seit
    May 2012
    Beiträge
    3
    hat sich erledigt!

    vielen dank
    Geändert von simon22 (07.05.2012 um 18:09 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. [PHP] Formular mit eintrag in MYSQL und Vorschau
    Von Minnemann im Forum Traum-Dynamik
    Antworten: 23
    Letzter Beitrag: 05.01.2009, 16:15
  2. problem dns-eintrag
    Von susiii im Forum Server & Provider
    Antworten: 2
    Letzter Beitrag: 08.01.2007, 11:04
  3. [MYSQL/PHP] Eintrag unterdrücken
    Von lange im Forum Traum-Dynamik
    Antworten: 7
    Letzter Beitrag: 23.01.2006, 23:43
  4. Mysql-Meldung unterdrücken (doppelter Eintrag)
    Von Schneeschaufel im Forum Traum-Dynamik
    Antworten: 14
    Letzter Beitrag: 13.02.2005, 22:40
  5. Problem mit db-Eintrag
    Von tommy-p im Forum Traum-Dynamik
    Antworten: 10
    Letzter Beitrag: 27.06.2002, 20:04

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Berechtigungen

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

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51