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 15.01.2012, 00:17  
Benutzer
 
Registriert seit: 25.06.2011
Beiträge: 74
PHP-Kenntnisse:
Anfänger
DonDemf befindet sich auf einem aufstrebenden Ast
Standard PHP updaten Datenbank nicht

Hallo Leute,
ich habe die Tabelle "fifa_leihmarkt_gebote" dort stehen Spieler drin, die von einem Verein an einen anderen ausgeliehen wurden.

Es wird zu jedem Spieler die Spielerid gespeichert, der ursprungsverein und der neue verein. Zusätzlich auch noch die Dauer.

Nun möchte ich eine Funktion nur für Admins (user dessen rang größer als 4 ist) erstellen, welche alle Spieler die eine dauer von ehr(ende hinrunde) oder err(enderückrunde) zurück zum urspungsverein transferiert.

Folgender Code:

PHP-Code:
<?php
$modus 
$_GET["modus"];

if(
$userdata["rang"] >= "4") {
    
// Geliehende Spieler zurück
    // ehr = Ende Hinrunde
    // err = Ende rückrunde
    
    
if(isset($modus)) {
        
        
// Leihgeschöfte raussuchen
        
$a1 'SELECT * FROM fifa_leihmarkt_gebote WHERE akzeptiert = "1" AND dauer = "'.$modus.'"';
$e1 mysql_query($a1);
while(
$r1 mysql_fetch_object($e1))
   {

$aendern 'UPDATE fifa_spieler Set verein = "'.$r1->verein.'", geliehen = "0" WHERE id = "'.$r1->id.'"';
$update mysql_query($aendern);
if(
$update==TRUE) {
    
    echo 
'Der Spieler mit er ID '.$r1->spielerid.' wurde erfolgreich zum ursprünglichen Verein transferiert';
} else {
    echo 
'Fehler';
    
mysql_error();
    
}
   }

        
    } else {
        echo 
'Bitte eine Art auswählen!';
    }
} else {
    
    echo 
'Du hast nicht die Rechte, diese Seite zu besuchen!'; }
?>
$modus ist in meinem Fall die dauer als err oder ehr

Da script gibt mir folgendes aus:
Der Spieler mit er ID 2611 wurde erfolgreich zum ursprünglichen Verein transferiert

Das ist also richtig, denn es gibt momentan nur den spieler 2611 der als dauer ehr hat (ich habe als modus ehr verwendet).
Aber er updatet den Spieler nicht

kann wer helfen?
DonDemf ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 15.01.2012, 01:03  
Erfahrener Benutzer
 
Registriert seit: 22.07.2004
Beiträge: 226
DirkHo befindet sich auf einem aufstrebenden Ast
Standard

Was gibt ein echo auf $aendern denn aus? Hast du das Statement mal z.B. über PHPMyAdmin ausgeführt?

Viele Grüße,

Dirk
DirkHo ist offline   Mit Zitat antworten
Alt 15.01.2012, 09:10  
php.de
Gast
 
Beiträge: n/a
Standard

Für mich schaut die Programmierung so aus, als würdest du keinerlei Änderung vornehmen. mysql_affected_rows liefert wahrscheinlich 0.
Zitat:
Es wird zu jedem Spieler die Spielerid gespeichert, der ursprungsverein und der neue verein.
Zitat:
Code:
$aendern = 'UPDATE fifa_spieler Set verein = "'.$r1->verein.'", geliehen = "0" WHERE id = "'.$r1->id.'"';
Du übergibts verein den $r1->verein. Willst du nicht verein den ursprünglichen Verein übergeben?
  Mit Zitat antworten
Alt 15.01.2012, 10:07  
Erfahrener Benutzer
 
Benutzerbild von Nullraff
 
Registriert seit: 27.10.2010
Beiträge: 183
PHP-Kenntnisse:
Fortgeschritten
Nullraff befindet sich auf einem aufstrebenden Ast
Standard

Was sagt mysql_error ?
__________________
Kaum macht man's richtig, schon geht's
Nullraff ist offline   Mit Zitat antworten
Alt 15.01.2012, 10:57  
php.de
Gast
 
Beiträge: n/a
Standard

Nachdem er bereits mit mysql_error arbeitet, gibt es offensichtlich keinen Fehler.
  Mit Zitat antworten
Alt 15.01.2012, 15:53  
meikel
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von DonDemf Beitrag anzeigen
PHP-Code:
$aendern 'UPDATE fifa_spieler Set verein = "'.$r1->verein.'", geliehen = "0" WHERE id = "'.$r1->id.'"';
$update mysql_query($aendern);
if(
$update==TRUE) { 
Da script gibt mir folgendes aus:
Der Spieler mit er ID 2611 wurde erfolgreich zum ursprünglichen Verein transferiert
Korrekt, weil if($update==TRUE) { nur sql error ausschließt aber nicht die Ergebnismenge 0.

Wieviel Datensätze UPDATE betroffen sind, mußt Du mit mysql_affected_rows() abfragen.

PHP-Code:
if(mysql_affected_rows($mysql_verbindungskennung) > 0) { 
oder
PHP-Code:
if(mysql_affected_rows($mysql_verbindungskennung) == 1) { 
http://www.php.de/newreply.php?do=newreply&p=642948
  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
Hilfe: datenbank mappen und kopieren M*I*B Datenbanken 29 15.02.2012 21:55
Datenbank mit mehreren arrays Updaten emgknobi PHP Tipps 2009 7 06.11.2009 12:23
Datenbank austauschbar machen durch Trennung von konkreter Implementierung Asipak PHP-Fortgeschrittene 10 04.09.2009 00:11
[Erledigt] Im- / Export einer MySQL Datenbank amaier161 Datenbanken 5 19.07.2009 00:42
In Der Datenbank etwas Updaten, aber nur bei bestimmten Leuten Tiimiiiboy PHP Tipps 2009 3 02.06.2009 21:39
Ueber ein Formular die Datenbank updaten Dant3r PHP Tipps 2009 30 30.04.2009 16:23
[Erledigt] Mehrere Datensätze in Datenbank updaten PHP Tipps 2005-2 4 23.10.2005 10:44
Probleme beim Datenupload zu meiner Datenbank Datenbanken 3 05.09.2005 19:47
Links aus Datenbank überprüfen und wen defekt spalte updaten PHP Tipps 2005-2 2 05.09.2005 11:34
Mehrere Anwendungen eine Datenbank... Datenbanken 5 15.08.2005 11:22
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:33
[Erledigt] mysql datenbank anlegen...aber WIE??? PHP Tipps 2005-2 0 05.08.2005 19:33
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:32
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:31
[Erledigt] mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:31


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