Demo

Probiere ClanSphere aus und teste daran herum. Demo


Antworten: 7
Seite [1]
Radiate


King for a day





Beiträge: 293
# Thema - 10.12.2007 um 23:23 Uhr
Wie bekomme ich mein Problem - Topicname: Pointsabzug bei Usernamen ändern - am besten hin?
Nutze derzeit diesen Code, aber der zieht immer Points ab, wenn man etwas ändert. -.-

 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
1. / 2. / ... 
<?php
$where 
"users_nick = '" cs_sql_escape($cs_user['users_nick']) . "' AND users_id != ";
    
$search_nick cs_sql_count(__FILE__,'users',$where $account['users_id']);
    if(!empty(
$search_nick)) {
        
$error++;
        
$errormsg .= $cs_lang['nick_exists'] . cs_html_br(1);
    }
    else {
    
// Extras by Radiate | www.sas-esports.de BEGIN
    // Discount Points
    
$points cs_sql_select(__FILE__,'users','users_id, users_points',"users_id = '" $account['users_id'] . "'",0,0,1);
    
$points['users_points'] = $points['users_points'] + 1;
    
$points_cells = array('users_id''users_points');
    
$points_save = array($account['users_id'], $points['users_points']);
    
cs_sql_update(__FILE__,'users',$points_cells,$points_save,$account['users_id']);
    
// Extras by Radiate | www.sas-esports.de END
    
}
?>


------------------
Clansphere 2008.0
Inaktiv
Radiate
Thread-Ersteller


King for a day





Beiträge: 293
# Antwort: 1 - 12.12.2007 um 00:06 Uhr
Kann mir wirklich niemand helfen?


------------------
Clansphere 2008.0

Inaktiv
|
Fr33z3m4n ClanSphere Team


Medal of Honor




Herkunft: Hamm
Beiträge: 11094
# Antwort: 2 - 12.12.2007 um 08:34 Uhr
naja du müsstest vor dem speichern kontrollieren, ob der username geändert wird. das heißt eine extra sql abfrage, ob neuer wert anders als alter.


------------------
mfg
Patrick "Fr33z3m4n" Jaskulski

Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer.

Inaktiv
|
Radiate
Thread-Ersteller


King for a day





Beiträge: 293
# Antwort: 3 - 12.12.2007 um 17:36 Uhr
Wenn ich das mal wüsste, ich dachte mir da im Code alles via $_POST rüberkommt, mache ich eine if else abfrage aber das ist blöd da man ja nichts ändern muss wenn schon etwas vorhanden war, so wird der alte Wert immer mit übernommen und die if else Abfrage erfüllt ihren Sinn nicht.

Wie kann ich das mit dem alten Wert realisieren weiß es echt nicht.

Vielleicht so:

 
1.
2.
3.
4.
5.
6.
1. / 2. / ... 
 
if($account['users_nick'] == $account['users_nick'])
   
Dann tu nichtsda dieser gleich ist
else
   
Dann gib den Punkteabzug weiter


Wäre das so richtig?


------------------
Clansphere 2008.0

Inaktiv
|
Fr33z3m4n ClanSphere Team


Medal of Honor




Herkunft: Hamm
Beiträge: 11094
# Antwort: 4 - 12.12.2007 um 17:41 Uhr
hmm mit $account hast mich auf die idee gebracht

 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
1. / 2. / ... 

<?php
if($cs_user['users_nick'] != $account['users_nick']) {
  
// Punkt abziehen
  
$points cs_sql_select(__FILE__,'users','users_id, users_points',"users_id = '" $account['users_id'] . "'",0,0,1);
  
$points['users_points'] = $points['users_points'] - 1;
  
$points_cells = array('users_id''users_points');
  
$points_save = array($account['users_id'], $points['users_points']);
}
?>


------------------
mfg
Patrick "Fr33z3m4n" Jaskulski

Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer.

Zuletzt editiert von Fr33z3m4n ClanSphere Team am 12.12.2007 um 17:41 Uhr (1x Editiert)
Inaktiv
|
Radiate
Thread-Ersteller


King for a day





Beiträge: 293
# Antwort: 5 - 12.12.2007 um 18:04 Uhr
Genau, wir beide werden zu Genies, denke ich zumindst. xD

Wenn der cs_user der eingeloggte ist und der account_user geändert wurde, weil der cs_user der eingeloggte ist und der account_user in der DB steht, dann bekommt das script gesagt das der User nicht mit dem account übereinstimmt und somit gibt es Points abzug. *hehe*

Ich danke dir!


------------------
Clansphere 2008.0

Inaktiv
|
Fr33z3m4n ClanSphere Team


Medal of Honor




Herkunft: Hamm
Beiträge: 11094
# Antwort: 6 - 12.12.2007 um 19:11 Uhr
@Radiate naja verstanden hast du es denke ich mal, aber die Erklärung passt überhaupt nicht

Wenn der cs_user der eingeloggte ist
joar
und der account_user geändert wurde

weil der cs_user der eingeloggte ist

und der account_user in der DB steht,
jo
dann bekommt das script gesagt das der User nicht mit dem account übereinstimmt und somit gibt es Points abzug. *hehe*
jop

Besser ausgedrückt.

Der übermittelte Wert aus dem Formular stimmt nicht mit den account Daten überein.
Nach dem Speichern der Daten ändert sich aber auch account['users_nick'] auf den neuen Wert.
cs_user sind nur die Werte aus dem Formular. nix mit eingeloggt etc.


------------------
mfg
Patrick "Fr33z3m4n" Jaskulski

Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer.

Zuletzt editiert von Fr33z3m4n ClanSphere Team am 12.12.2007 um 19:11 Uhr (1x Editiert)
Inaktiv
|
Radiate
Thread-Ersteller


King for a day





Beiträge: 293
# Antwort: 7 - 12.12.2007 um 22:16 Uhr
Ja, stimmt, denke aber das wir schon das selbe meinen, wenn der Übermittelte Wert der eingeloggte User ist da cs_user die übermittelten Werte als das was übermittelt wurde zum einloggen, benutzt wird, so weiß der Account das dieser User geändert, nicht existiert oder gerade eingeloggt wurde.

Du hast aber auch mit meiner Schreibweise recht, viele sagen die kommen nicht mit mir mit, da ich schnell Themen wechsel, kompliziert ausdrücke und ein sehr ausgeprägtes Vokabular besitze. *hehe*

Nichts, desto trotz teste ich das jetzt mal, vielen Dank Fr33z3m4n!


------------------
Clansphere 2008.0

Inaktiv
|
Antworten: 7
Seite [1]


Sie müssen sich registrieren, um zu antworten.