php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.01.2011, 14:53  
Neuer Benutzer
 
Registriert seit: 17.01.2011
Beiträge: 15
PHP-Kenntnisse:
Anfänger
chic0489 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] mysql Update Befehl

Hallo zusammen,

ich hab hier ein kleines sql Problem.
Ich habe hier einen Update Befehl. Die Variblen kommen von einen anderen Skript und werden per $_GET übernommen. Das Problem ist, wenn ich auf speichern klicke dann kommt keine Fehlermeldung sondern das der Datensatz gespeichert wurde. Wenn ich dann aber in der Datenbank nachschauen ist der Datensatz nicht verändert worden.

Hier der Code:
PHP-Code:
if ($updateabschicken == 'Speichern')
    {
    
mysql_query("UPDATE Verwaltung_Partner SET firmenname = '$firmenname', strasse='$strasse', strassennummer='$strassennummer', plz='$plz', ort='$ort', land='$land', bundesland='$bundesland', website='$website' WHERE partnernummer='$partnernummer'");
    echo 
'Datensatz gespeichert';
    
mysql_error();
    }
else
    {
    echo 
"Fehler, Datensatz konnte nicht gespeichert werden";
    } 
Kann mir jemand helfen?

Gruß
Chic0489

Geändert von chic0489 (19.01.2011 um 14:58 Uhr).
chic0489 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 19.01.2011, 15:00  
Erfahrener Benutzer
 
Registriert seit: 17.01.2011
Beiträge: 171
PHP-Kenntnisse:
Anfänger
curryworld befindet sich auf einem aufstrebenden Ast
Standard

hast du dir einfach mal den SQL Query ausgeben lassen?
zusätzlich solltest du die Variablen aus dem String nehmen:
PHP-Code:
SET firmenname '".$firmenname."'
Deine Überprüfung testet übrigens nicht ob etwas eingefügt wurde, nur das dein Button geklickt wurde. Das kannst du besser mit mysql_affected_rows testen.
curryworld ist offline   Mit Zitat antworten
Alt 19.01.2011, 15:04  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.114
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard

mysql_error steht an falscher postion
PHP-Code:
mysql_query("Update bla") or die(mysql_error()); 
deine IF abfrage , prüft ob auf daten speichern gedrückt wurde und nicht ob daten wirklich gespeichert wurden.

PHP-Code:
if ($updateabschicken == 'Speichern')
    {
   if(
mysql_query("UPDATE Verwaltung_Partner SET firmenname = '$firmenname', strasse='$strasse', strassennummer='$strassennummer', plz='$plz', ort='$ort', land='$land', bundesland='$bundesland', website='$website' WHERE partnernummer='$partnernummer'")){
 echo 
'Datensatz gespeichert'
}else{
die(
mysql_error());
}
    
    }
else
    {
    echo 
"Fehler, Datensatz konnte nicht gespeichert werden";
    } 
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen
BlackScorp ist offline   Mit Zitat antworten
Alt 19.01.2011, 15:04  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Du solltest mal deinen Query auf SQL Injection sichern. Wenn dir sonst jemand ein ' in irgend ein Feld eintippt bekommste schon nen Fehler um die Ohren und der Query funktioniert nicht mehr.
Flor1an ist offline   Mit Zitat antworten
Alt 19.01.2011, 15:24  
Neuer Benutzer
 
Registriert seit: 17.01.2011
Beiträge: 15
PHP-Kenntnisse:
Anfänger
chic0489 befindet sich auf einem aufstrebenden Ast
Standard

Habs jetzt folgendermaßen abgeändert, aber es funktioniert immer noch nicht und einen Fehler bekomm ich auch nicht:

PHP-Code:
if ($updateabschicken == 'Speichern')
    {
    if (
mysql_query("UPDATE Verwaltung_Partner SET firmenname = '$firmenname', strasse='$strasse', strassennummer='$strassennummer', plz='$plz', ort='$ort', land='$land', bundesland='$bundesland', website='$website' WHERE partnernummer='$partnernummer'"))
    {
    echo 
'Datensatz gespeichert';
    }
else
    {
    die (
mysql_error());
    }
    } 
chic0489 ist offline   Mit Zitat antworten
Alt 19.01.2011, 15:28  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.114
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard

versuchs hiermit:

PHP-Code:
error_reporting(E_ALL & ~E_DEPRECATED);
 
mysql_query("UPDATE Verwaltung_Partner SET firmenname = '$firmenname', strasse='$strasse', strassennummer='$strassennummer', plz='$plz', ort='$ort', land='$land', bundesland='$bundesland', website='$website' WHERE partnernummer='$partnernummer'") or die(mysql_error()); 
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen
BlackScorp ist offline   Mit Zitat antworten
Alt 19.01.2011, 15:29  
Erfahrener Benutzer
 
Registriert seit: 17.01.2011
Beiträge: 171
PHP-Kenntnisse:
Anfänger
curryworld befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
if ($updateabschicken == 'Speichern')
    {
 
mysql_query("UPDATE Verwaltung_Partner SET firmenname = '".$firmenname."', strasse='".$strasse."', strassennummer='".$strassennummer."', plz='".$plz."', ort='".$ort."', land='".$land."', bundesland='".$bundesland."', website='".$website."' WHERE partnernummer='".$partnernummer."'") or die(mysql_error());
    echo 
'Datensatz gespeichert';
  } 
versuch das mal so, wie gesagt das absichern der einzelnen Werte solltest du auch noch umsetzen mysql_real_escape_string()
curryworld ist offline   Mit Zitat antworten
Alt 19.01.2011, 15:41  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

Bitte aussagekräftiger ... "funzt nich" hilft uns genauso wenig wie dir

zu deinem Problem :

wo baust du deine Get-Parameter in die Variablen ? oder läuft dein Script nur mit register_globals auf ON ? dann schäm dich und 3 Minuten in die Ecke stellen ....

danach .. weise die eigentliche Abfrage erstmal einer Variablen zu und gib deren Inhalt aus. Dann kopierst du den erhaltenen Text in phpmyadmin und schaust, was der dazu sagt ... Möglicherweise ergibt dein WHERE - Teil ein "nicht gefunden" - dann wird auch kein Datensatz verändert ....
__________________
"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste
eagle275 ist offline   Mit Zitat antworten
Alt 19.01.2011, 16:18  
Moderator
 
Registriert seit: 06.06.2008
Beiträge: 4.945
PHP-Kenntnisse:
Fortgeschritten
Wolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer Anblick
Wolla eine Nachricht über ICQ schicken
Standard

#5
Wenn da der Wert "Speichern" ankommt, dann speicherst du, und wenn "Speichern" nicht ankommt, dann gibst du mysql_error() aus?

Weißt du überhaupt, was du da machst oder wuselst du im Dunklen rum?

Und lass endlich mal die Fehler ausgeben:
PHP-Code:
if ($updateabschicken == 'Speichern') {
 
    
$sql "UPDATE 
            Verwaltung_Partner SET 
                firmenname = '"
.mysql_real_escape_string($firmenname)."', 
                strasse='"
.mysql_real_escape_string($strasse)."', 
                strassennummer='"
.mysql_real_escape_string($strassennummer)."', 
                plz='"
.mysql_real_escape_string($plz)."', 
                ort='"
.mysql_real_escape_string($ort)."', 
                land='"
.mysql_real_escape_string($land)."', 
                bundesland='"
.mysql_real_escape_string($bundesland)."', 
                website='"
.mysql_real_escape_string($website). "' 
            WHERE 
                partnernummer='"
.mysql_real_escape_string($partnernummer)."'";
    
    
mysql_query($sql) or die('Fehler bei: ' $sql '<br />' mysql_error());
    
    echo 
'Datensatz gespeichert';
  } 

Woher die Daten kommen wird allerdings nicht klar.
__________________
Warum denkt mein Hund eigentlich immer dann, wenn es an der Tür klingelt, es sei für ihn?
Wolla ist offline   Mit Zitat antworten
Alt 19.01.2011, 18:16  
Neuer Benutzer
 
Registriert seit: 17.01.2011
Beiträge: 15
PHP-Kenntnisse:
Anfänger
chic0489 befindet sich auf einem aufstrebenden Ast
Standard

Ich hab eure Änderungen vorgenommen und weiß jetzt voran es liegt. So wie unter #8 schon erwähnt wurde, gibt es einen Fehler mit der WHERE-Klausel. Ich hab die Datenbankabfrage jetzt mal auslesen lassen. Die Daten werden verändert aber in der WHERE-Klausel wird der Variable $partnernummer kein Wert zugewiesen. Diese wird vom vorherigen Skript mit $_GET übernommen.

$partnernummer = $_GET['partnernummer'];


Hier die Ausgabe der Abfrage:
Datensatz gespeichertUPDATE Verwaltung_Partner SET firmenname = 'Firma Test', strasse='Strasse Test', strassennummer='99', plz='99999', ort='Ort', land='Land', bundesland='Bundesland', website='www.XXX.de' WHERE partnernummer=''

Und nochmal zu den Fehlern: Es kommen keine! Ich hab jetzt genau die Abfrage wie unter #9 aufgebaut!!!
chic0489 ist offline   Mit Zitat antworten
Antwort


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
PHP MySQL -> UPDATE wird nicht ausgeführt Fluxkompensator PHP Tipps 2010 11 29.08.2010 19:05
mysqli_multi_query lässt Eintrag aus... Samhayne Datenbanken 8 07.02.2010 19:02
Update Befehl funktioniert nicht BlackKnight PHP Tipps 2010 43 04.02.2010 02:06
[Erledigt] Mysql update setzt leeren Wert Abakay PHP Tipps 2009 19 08.05.2009 15:21
[Erledigt] Problem beim Mysql UPDATE mastertnt PHP Tipps 2009 4 14.02.2009 17:26
Problem mit dem Update Befehl Lampi Datenbanken 3 22.12.2008 17:19
Anfängerproblem Update Befehl MoCo PHP Tipps 2008 9 24.11.2008 15:46
Update auf php5 -->Problem mit mysql PHP Tipps 2006 6 15.03.2006 12:43
MySQL Server startet nicht mehr richtig... Datenbanken 16 03.03.2006 19:40
mysql problem: mysql update wird nicht ausgeführt schmiddy PHP Tipps 2007 4 27.12.2005 20:35
[Erledigt] MySQL Befehl für MySQL 4.0.24 Datenbanken 2 23.08.2005 17:35
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
Insert und Update Befehl funktioniert nicht Anuschka Datenbanken 2 03.09.2004 00:38
mysql comandline befehl für import eines scripts Datenbanken 2 30.07.2004 15:57
regulaere ausdruecke in einem MySQL befehl mit REGEXP Datenbanken 3 16.06.2004 23:07

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mysql update befehl, update befehl php, php mysql update, mysql_query update, mysql php update befehl wird nicht übernommen, php update befehl, mysql_query(\update, http://www.php.de/php-einsteiger/76270-erledigt-mysql-update-befehl.html, was ist ein update befehl, mysql befehle werden nicht angenommen, mysql update php befehl überprüfen, mysql-update oder insert mit leeren werten, php mysql update befehl funktioniert nicht, update befehl datenbank in php, if in update befehl mysql, php mysql echo upadate befehl =1, mysql befehl update, mysql_query update speichert nicht, mysql update befehl speichert nichts, wie variablen in mysql update befehl

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:53 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