Ergebnis 1 bis 4 von 4
  1. #1
    CIH-Virus
    Registriert seit
    24.12.2008
    Beiträge
    468

    Standard In datenbank abspeicher wie?

    Hallo,

    ich habe 7 felder die mit den Datum einer Woche gefüllt werden. Darunter Felder wo man die Schicht auswählen kann (Arbeitsschicht). Neben diesen Felder habe ich eine checkbox die die Felder aktiviert und wieder deaktiviert (nicht wichtig nur das ihr es wisst). Natürlich hat mein script weitere Felder wie email name usw. die funktionieren einwandfrei und deswegen werden sie hier keine weitere Erwähnung bekommen.

    Die Felder sind durch nummerriert.

    "datum" sind die Datums Felder
    "datum_" sind die Schichten Felder

    Ich will das wenn der User das Fomular abschickt die Daten in die Datenbank speichert. Die Datenbank tabelle hat eine Tabelle mit zeit und schicht.

    Wie schaffe ich es das die Daten in die Datenbank bekomme

    hier mal meine bisherigen Scripts:

    auswahl.php

    PHP-Code:
    <td height="30">Datum :</td> 
          <td><?php   
         
        $date 
    mktime(000date('m'), date('d') - (date('w')) , date('Y')); 
         
        for (
    $i 0$i 7$i++){ 
            
    $date mktime(000date('m'$date), date('d'$date)+1date('Y'$date));        
    ?> 
              <input name="datum<?php echo $i;?>" type="text" id="datum<?php echo $i;?>" value="<?php echo date('d.m.Y'$date); ?>" size="13" readonly="true"> 
              <input name="checkbox<?php echo $i;?>" type="checkbox" id="checkbox<?php echo $i;?>" onClick="this.form.datum<?php echo $i;?>.disabled=!this.checked; 
    this.form.datum_<?php echo $i;?>.disabled=!this.checked" value="" checked="checked" /></td> 
          <td><?php  
        

    ?></td> 
          </tr> 
        <tr> 
          <td>Schicht :</td> 
          <td><?php   
         
         
         
        
    for ($i 0$i 7$i++){ 
                   
    ?> 
            <select name="datum_<?php echo $i;?>"  id="datum_<?php echo $i;?>"> 
            <option value="Fruehschicht">Fruehschicht</option> 
            <option value="Spaetschicht">Spaetschicht</option> 
            <option value="Nachtschicht">Nachtschicht</option> 
          </select></td> 
          <td><?php  
        

    ?></td>
    </span>Das Script was die Daten in die Datenbank speichert "d_auswahl.php"
    PHP-Code:
    ?php
    include 'includes/_config.php';

     

    mysql_select_db("lol");

     

    $sql="INSERT INTO eingabe (name, vorname, email, tag, zeit, tel, id)

     

    VALUES

    ('
    $_POST[name]','$_POST[vorname]','$_POST[email]','$_POST[tag]','$_POST[zeit]','$_POST[tel]','$_POST[id]')";

     

    if (!
    mysql_query($sql))

      {

      die(
    'Error: ' mysql_error());

      }

    echo 
    '<br><br><br><br><br><br><br><br><br><br><br><br><br><br><center>Sie wurden Eingetragen. Sie bekommen demn&auml;chst eine E-mail.  <a href="myaccount.php">My Account</a></center>' ;

     

     

     

    mysql_close();

    ?> 
    das javascript mit dem Kästchen auswahl (aktivieren/deaktivieren) "kontroll_kasten_auswahl.js"



    [java]<script language="javascript">

    function deaktivieren(){

    if (document.getElementById('id1').checked == false)

    document.getElemntById('datum<?php echo $i;?>').disabled =true;



    }



    {

    if (document.getElementById('id1').checked == false)

    document.getElemntById('datum_0').disabled = true;

    }

    </script>[/java]

    kann einer helfen?



    Mit freundlichen Grüßem


  2. #2
    DateMake Dialer
    Registriert seit
    12.08.2007
    Beiträge
    100

    Standard

    Hi,

    ich hab deine beiden Postings (gestern und heute) jetzt bestimmt 10x gelesen und trotzdem weiß ich nicht, was du eigentlich willst.

    Kannst du deine Fragen evt. so stellen, dass jemand der dein Threads liest, sofort weiß, was du wissen willst?

    Bei diesem hier könnte alles mögliche deine Frage beantworten.
    - Weißt du nicht, wie man ein Formular erstellt und absendet?
    - ...wie du deine Daten ans SQL-Statement übergibst?
    - ...wie man PHP-Code ordentlich schreibt?
    - Willst du, dass dir jemand dein Zeug fertig schreibt?
    - ...

  3. #3
    Meister des Grills Avatar von c4pone
    Registriert seit
    08.11.2006
    Beiträge
    167

    Standard

    Wie schaffe ich es das die Daten in die Datenbank bekomme
    $sql="INSERT INTO eingabe (name, vorname, email, tag, zeit, tel, id)



    VALUES

    ('$_POST[name]','$_POST[vorname]','$_POST[email]','$_POST[tag]','$_POST[zeit]','$_POST[tel]','$_POST[id]')"
    ;
    Ich schließe mich DrWhiteLetter und sage ich hab keine ahnung was du möchtest ?

    naja abgesehen davon ist dein code komplett unsauber.
    Guck dir mal nen Objektorientiertes Tutorial an. Auch würde ich dir ans Herz legen sich mal mit Design Patterns auseinander zusetzen.
    UND GANZ WICHTIG : Prüfe immer jede Eingabe die vom User kommt und speicher sie nicht ungeprüft in der Datenbank

    Gruß c4pone
    Geändert von c4pone (26.02.2010 um 22:29 Uhr)
    Zitat Zitat von Barney Stinson
    “Think of me like Yoda, but instead of being little and green I wear suits and I'm awesome. I'm your bro—I'm Broda!”

  4. #4
    Kevin Lee Poulsen Avatar von VeN0m
    Registriert seit
    30.12.2008
    Beiträge
    1.270

    Standard

    $array[0] geht, $array['keyname'] geht, aber $array[keyname] ist vom Syntax her schonmal falsch.
    Auch definierst Du lediglich die Variable $sql, sendest diese Abfrage aber nie ab.
    Bist Du Dir sicher, dass PHP in Verbindung mit MySQL etwas für Dich ist?
    Oder wie wäre es, wenn Du erst einmal PHP grundlegend lernst (bzw. verstehst), bevor Du Dich an weitere Dinge traust?
    Richtig wäre es in etwa so:

    PHP-Code:
    $name $_POST['name'];
    $vorname $_POST['vorname'];
    $email $_POST['email'];
    $tag $_POST['tag'];
    $zeit $_POST['zeit'];
    $tel $_POST['tel'];
    $id $_POST['id'];

    mysql_query("INSERT INTO eingabe (name, vorname, email, tag, zeit, tel, id) VALUES ('$name','$vorname','$email','$tag','$zeit','$tel','$id')"); 
    Normalerweise sollte man allerdings dafür sorgen, dass keine unmaskierten Eingaben in die Datenbank eingetragen werden, um XSS oder Injectionen zu vermeiden.
    Dazu kann man sich mal mysql_real_escape_string() bzw. htmlentities() und intval() ansehen.
    Falls das immer noch nicht geht, versuche die(mysql_error()), um den zuletzt gemeldeten MySQL-Fehler auszugeben.

    Weiterhin wäre es sinnvoller, time() in die Datenbank einzutragen (gibt einen aktuellen UNIX-Timestamp zurück), um diesen dann mit der Funktion strftime() beliebig zu formatieren.
    Das spart einige Felder und eine Menge Aufwand.
    Z.B. ist strftime("%d",time()) der aktuelle Tag als Zahl.
    Geändert von VeN0m (26.02.2010 um 22:36 Uhr)
    Come to the dark side - We have cookies

Stichworte

Berechtigungen

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