Thread Verfasser: Rolly8-HL
Thread ID: 1174
Thread Info
Es gibt 1 Beiträge zu diesem Thema, und es wurde 1315 Mal angesehen.
 Thema drucken
SELECT DB_USERS
Rolly8-HL
Hallo, habe mal wider eine Komplizierte Frage.
Ich möchte mit verschieben der ID in DB_USER_GROUPS zu anderen Anwendungen die ID dort ändern lassen, klappt auch wunderbar.

Jetzt möchte ich aber auch gleichzeitig in DB_USERS user_groups diese ID umschreiben lassen, geht auch in etwa, nur kann die $data['user_groups'] nicht ausgelesen werden und damit nicht korrekt über geben werden.
Habe diesen Script
Code
      $result = dbquery("SELECT user_id,user_name,user_level FROM ".DB_USERS." WHERE user_groups REGEXP('^\\\.{$_POST['cat_move_id']}$|\\\.{$_POST['cat_move_id']}\\\.|\\\.{$_POST['cat_move_id']}$')");
      
      while ($data = dbarray($result)) {
          if (!preg_match("(^\.{$_POST['cat_move_id']}$|\.{$_POST['cat_move_id']}\.|\.{$_POST['cat_move_id']}$)", $data['user_groups'])) {
            $user_groups = $data['user_groups'].".".$_POST['group_move2'];
            $result2 = dbquery("UPDATE ".DB_USERS." SET user_groups='$user_groups' WHERE user_id='".$data['user_id']."'");
         }
      }

Es werden gezielt die User ausgesucht mit der zu ändernden ID, es geht und eine neue ID wird auch angelegt.
Nur was bis dahin an anderen ID drin ist kann nicht ausgelesen werden damit die dann auch mit übernommen werden können.

Zitat: SELECT user_id,user_name,user_level FROM

Kann ich nicht ändern dann geht nichts mehr.

Was mache ich falsch?

Zusammengefügt am 02. Januar 2017 um 12:52:54:
Nachtrag:
Habe da mal weiter gemacht und was gefunden, leider mal wieder ein neues Problem.
Code
   $result = dbquery("SELECT user_id,user_name,user_groups FROM ".DB_USERS." WHERE user_groups REGEXP('^\\\.{$_POST['cat_move_id']}$|\\\.{$_POST['cat_move_id']}\\\.|\\\.{$_POST['cat_move_id']}$')");
   while ($data = dbarray($result)) {
      $user_groups = $data['user_groups'];
      $user_groups = preg_replace(array("(^\.{$_POST['cat_move_id']}$)","(\.{$_POST['cat_move_id']}\.)","(\.{$_POST['cat_move_id']}$)"), array("",".",""), $user_groups);
      $result2 = dbquery("UPDATE ".DB_USERS." SET user_groups='".$user_groups.".".$_POST['group_move2']."' WHERE user_id='".$data['user_id']."'");
      }

Damit wird der Inhalt erhalten und eine neue ID wird zugefügt.
Wenn jetzt aber schon die selbe ID vorhanden ist, steht sie jetzt doppelt drin und wird auch doppelt im Profil und M-Liste angezeigt.

Wie kann man das ändern?
Bearbeitet von Rolly8-HL am 02.01.2017 um 12:52
Gruß Rolly8-HL
Was für Andere Wichtig ist muss für mich nicht genauso Wichtig sein!
Bin Dickkopf Unbelehrbar mache aus Protest nicht das was andere für Richtig halten!
Das gibt einem zu Denken oder?
 
Springe ins Forum: