php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 12.08.2005, 18:31  
Benutzer
 
Registriert seit: 26.09.2003
Beiträge: 98
wizzardxx
Standard Update funktioniert nicht

Hallo,
ich habe ein Problem mit meiner Update Funktion.
Es werden aus der DB zb. 3 Einträge in ein Textfeld gelesen.
Wenn ich die Einträge jetzt änder zb. in:
Test 1
Test 2
Test 3

wird in die DB 3 mal Test 3 eingetragen.
Kann mir einer helfen und sagen was ich in dem Script ändern bzw. hinzufügen muss?

Code:
$db_res=mysql_query("SELECT * FROM u_auswahl WHERE un=$res[id] ORDER BY id");
$i=1;
while($row=mysql_fetch_array($db_res,MYSQL_ASSOC)) {
    echo "Auswahlmöglichkeit ".$i.': <input type="text" name="auswahl" style="width: 200px" value="'.$row[auswahl].'">
';
    $i++;
}
Dann die 2.Datei wo der update erfolgen soll.

Code:
mysql_query("UPDATE u_auswahl SET auswahl='".addslashes($auswahl)."', un='$un'") or die(mysql_error());
wizzardxx ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 12.08.2005, 18:35  
Erfahrener Benutzer
 
Registriert seit: 29.10.2004
Beiträge: 1.783
derHund
Standard

du mußt den upzudatenden datensatz mittels WHERE festlegen.
__________________
derHund ist offline  
Alt 12.08.2005, 19:10  
Benutzer
 
Registriert seit: 26.09.2003
Beiträge: 98
wizzardxx
Standard

Das Script habe ich mir wo runtergeladen.
Dort wird anstatt Update, Gelöscht und wieder neu eingelesen.
Aber dann ändert sich auch die ID und das möchte ich nicht.

Original:
Code:
$db_res=mysql_query("SELECT * FROM u_auswahl WHERE un=$res[id] ORDER BY id");
$i=1;
while($row=mysql_fetch_array($db_res,MYSQL_ASSOC)) {
    echo "Auswahlmöglichkeit ".$i.': <input type="text" name="wm[]" style="width: 200px" value="'.$row[auswahl].'">
';
    $i++;
}
2. Datei
Code:
mysql_query("DELETE FROM u_auswahl WHERE un=$un");

 mysql_query("UPDATE u_umfragen SET fragestellung='".$fs."', startdate='$startdate', enddate='$enddate' WHERE id='$un'") or die(mysql_error());

    for($i=0;$i<count($wm);$i++) {
        if($wm[$i]!="") {
        mysql_query("INSERT INTO u_auswahl (auswahl, un) VALUES ('".addslashes($wm[$i])."','$un')") or die(mysql_error());
        }
    }
Das löschen und neu eintragen funktioniert. Aber warum geht das mit
Update nicht wenn ich statt den Insert:
Code:
        	mysql_query("UPDATE u_auswahl SET auswahl='".addslashes($wm[$i])."' ") or die(mysql_error());
eingebe. var_dump zeigt mir das eigentlich alles in Ordnung ist.
Aber statt Test 1 Test 2 Test 3 trägt er drei mal Test 3 ein.

Code:
//var_dump

["fs"]=>
  string(16) "Das ist ein Test"
  ["wm"]=>
  array(3) {
    [0]=>
    string(6) "Test 1"
    [1]=>
    string(6) "Test 2"
    [2]=>
    string(6) "Test 3"
wizzardxx ist offline  
Alt 12.08.2005, 21:22  
Benutzer
 
Registriert seit: 26.09.2003
Beiträge: 98
wizzardxx
Standard

So ich noch mal.
Selbst wenn ich den upzudatenden datensatz mittels WHERE festlege
habe ich immer noch das gleiche Problem.

Code:
mysql_query("UPDATE u_auswahl SET auswahl='".addslashes($wm[$i])."' WHERE auswahl='".$wm[$i]."'") or die(mysql_error());
wizzardxx ist offline  
Alt 12.08.2005, 21:32  
Gast
 
Beiträge: n/a
Standard

Ja nee, bei WHERE musst du schon den alten Wert angeben, nicht den neuen. Genau so wie beim SELECT
 
Alt 12.08.2005, 21:45  
Benutzer
 
Registriert seit: 26.09.2003
Beiträge: 98
wizzardxx
Standard

Das hatte ich schon versucht aber dann erhalte ich eine Fehlermeldung.

Notice: Undefined variable: res in......

Code:
mysql_query("UPDATE u_auswahl SET auswahl='".addslashes($wm[$i])."' WHERE un='$res[id]'") or die(mysql_error());
wizzardxx ist offline  
Alt 12.08.2005, 22:15  
Benutzer
 
Registriert seit: 06.08.2005
Beiträge: 55
nickie12
Standard

in dieser datei ist die variable res festgelegtm, oda? wenn nich musste die erst ma festlegen
nickie12 ist offline  
Alt 12.08.2005, 22:16  
Benutzer
 
Registriert seit: 26.09.2003
Beiträge: 98
wizzardxx
Standard

Ja und wird als hidden field auf die nächste Seite übergeben.

Code:
<form action="akt_umfrage_bearb_2.php?<?=SID?>" method="post">
<input type="hidden" name="un" value="<?=$res[id]?>">
wizzardxx ist offline  
Alt 12.08.2005, 22:34  
Gast
 
Beiträge: n/a
Standard

Ähm?

Vielleicht so?

Code:
mysql_query("UPDATE u_auswahl SET auswahl='".addslashes($un)."' WHERE un='$un'") or die(mysql_error());
Oder versteh ich das falsch (sry hab mich ned in den ganzen Quelltext eingearbeitet)
 
Alt 12.08.2005, 22:39  
Benutzer
 
Registriert seit: 26.09.2003
Beiträge: 98
wizzardxx
Standard

Das hatte ich schon. Dann wird 3 mal das gleiche eingetragen.
Kann doch nicht sein das ich an der Stelle jetzt schon Stunden verbringe.
wizzardxx ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Update - Sperre funktioniert nicht areUkidding PHP Tipps 2008 39 26.06.2008 22:47
Session funktioniert nicht bei session.use_cookies = Off Quagga PHP Tipps 2007 13 13.01.2007 18:27
Weder Update noch Insert funktioniert... MessengerNews! Datenbanken 3 31.07.2006 08:39
Update funktioniert nicht Sachse PHP Tipps 2007 6 14.12.2005 08:46
UPDATE Datenbank funktioniert nicht??!! c-bass PHP Tipps 2005-2 23 01.08.2005 15:12
SQL Update funktioniert lokal aber auf dem Server nicht Datenbanken 1 22.07.2005 09:35
UPDATE funktioniert nicht... PHP Tipps 2005-2 2 12.07.2005 10:56
Update in mysql funzt nicht maeck PHP Tipps 2005-2 4 27.06.2005 22:52
MySQL UPDATE Befehl funktioniert nicht PHP Tipps 2005 6 24.01.2005 15:03
mysql update query mit mehreren Tabellen funktioniert nicht PHP-Fortgeschrittene 5 08.01.2005 16:29
UPDATE mit ' im Text Datenbanken 2 09.11.2004 20:07
update von Bildern funktioniert nicht PHP Tipps 2004 1 05.10.2004 08:39
Insert und Update Befehl funktioniert nicht Anuschka Datenbanken 2 03.09.2004 00:38
UPDATE funktioniert irgendwie nicht yoshy PHP Tipps 2004 5 26.07.2004 10:51
UPDATE funktioniert nicht PHP Tipps 2004 4 08.06.2004 17:25

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mysql_query(\update, mysql_query update, mysql_query( \update l_text set in=\'$in\') notice: undefined variable

Alle Zeitangaben in WEZ +1. Es ist jetzt 10:46 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.