kostenloser Webspace werbefrei: lima-city


Update Mysql

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    laufen91

    laufen91 hat kostenlosen Webspace.

    Hallo,
    ich möchte eine Zeile in meiner Datenbank updaten. Nur will mein Code nicht funktionieren. Es erscheint keine Fehlermeldung, aber die Änderung wird auch nicht vorgenommen.
    <?
    $name = $_POST[wertbearbeiten];
    $fonds = $_POST[fonds];
    $datum = $_POST[Datum];
    $kurs = $_POST[Kurs];
    $tageshoch = $_POST[Tageshoch];
    $tagestief = $_POST[Tagestief];
    
    $dbname="***";
    $dbhost="mysql.lima-city.de";
    $dbuser="***";
    $dbpass="***";
    $link = mysql_connect($dbhost,$dbuser,$dbpass);
    mysql_select_db($dbname);
    
    $sql = "SELECT * FROM `$fonds` WHERE 1 order by `Datum` asc limit $name";
    $result = mysql_query ($sql, $link);
    
    $i = 1;
    while ($i <= $name){
    $row = mysql_fetch_array ($result);
    $i = $i + 1;
    }
    
    $datumalt = $row[Datum];
    
    
    $sql2 = "UPDATE `$fonds` SET `Datum` = $datum, SET `Kurs` = $kurs, SET `Tageshoch` = $tageshoch, SET `Tagestief` = $tagestief WHERE `Datum` = $datumalt";
    $eintragen2 = mysql_query($sql2, $link);
    ?>
    <? echo $fonds ?>&nbsp wurde erfolgreich bearbeitet!<br>


    Es liegt vermutlich an den Hochkommas. Kann mir jemand bitte kurz sagen, wann ich die setzen muss und wann nicht? In Tutorials wird es mal so und mal so gehandhabt... Danke
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Sers

    versuch mal nur ' um die Werte rum zu setzen:


    $sql2 = "UPDATE ".$fonds." SET Datum = '".$datum."', Kurs = '".$kurs."',  Tageshoch = '".$tageshoch."', Tagestief = '".$tagestief.'" WHERE Datum = '".$datumalt."'";


    Außerdem musst du nur einmal SET schreiben.

    am besten schreibst du, wenn du fehler in SQL zeug hast

    mysql_query("SQL-STRING")or die(mysql_error());


    "or die(mysql_error());" sorgt dafür das es dir ne fehlermedlung rausgiebt.
    Nutze es aber immer nur wärend der entwicklung, dass heißt, lösche es, sobald du fertig bist.

    Grüsse
    Color
  4. Ich muss sagen... Der Code ist mehr als fehlerhaft und weniger als vorteilhaft ;)

    $sql = "SELECT * FROM `$fonds` WHERE 1 order by `Datum` asc limit $name";


    Spätestens hier ist das ganze Script nicht mehr lauffähig, da MySQL garnicht weiß, was du eigentlich von ihm willst.

    Ich habe nur kurz drüber geschaut und einige kleine Änderungen vorgenommen. Ob es funktioniert, wirst du erfahren, sobald du ???? gegen den Namen der Spalte ausgetauscht hast, aus der selektiert werden soll.

    <?
    $name = $_POST['wertbearbeiten'];
    $fonds = $_POST['fonds'];
    $datum = $_POST['Datum'];
    $kurs = $_POST['Kurs'];
    $tageshoch = $_POST['Tageshoch'];
    $tagestief = $_POST['Tagestief'];
    
    $dbname="***";
    $dbhost="mysql.lima-city.de";
    $dbuser="***";
    $dbpass="***";
    $link = mysql_connect($dbhost,$dbuser,$dbpass);
    mysql_select_db($dbname);
    
    $result = mysql_query("SELECT * FROM ".$fonds." WHERE ????? = '1' ORDER BY Datum ASC limit ".$name) or die(mysql_error());
    
    $i = 0;
    while ($i++ <= $name) {	$row = mysql_fetch_array ($result); }
    
    $datumalt = $row['Datum'];
    
    mysql_query("UPDATE ".$fonds." SET Datum = '".$datum."', Kurs = '".$kurs."', Tageshoch = '".$tageshoch."', Tagestief = '".$tagestief."' WHERE Datum = ".$datumalt) or die(mysql_error());
    
    echo $fonds." wurde erfolgreich bearbeitet!<br />";
    ?>
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!