Erweiterung um zusätzliche Userdaten

Begonnen von Carsten3110, 14 März 2003, 08:43:25

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

Carsten3110

Hallo,

ich habe ein Problem mit der Erweiterung des Your_Account Modules. Ich habe  noch ein zusätzliches Feld "user_pres" in der Datenbank eingerichtet (enthält nur 0 oder 1), das über das Userformular gespeichert werden soll. Leider schlägt dies Fehl. Nachfolgende der Quelltext der geänderen Scriptseiten:

mainfile.php
global $userinfo, $user_prefix, $dbi;
    $user2 = base64_decode($user);
    $user3 = explode(":", $user2);
    $result = sql_query("select uid, name, uname, email, femail, url, user_occ, user_from, user_intrest, pass, storynum, umode, uorder, thold, noscore, bio, ublockon, ublock, commentmax, newsletter,  user_pres from ".$user_prefix."_users where uname='$user3[1]' and pass='$user3[2]'", $dbi);
    if (sql_num_rows($result, $dbi) == 1) {
       $userinfo = sql_fetch_array($result, $dbi);
    }
     
     //echo "User: $userinfo[uname]Name: $userinfo[name]Newsletter: $userinfo[newsletter]showPress: $userinfo[presentation]";
     
    return $userinfo;

modules\Your_Account\index.php

function edituser (...)
....
echo "<form name=\"Register\" action=\"modules.php?name=Your_Account\" method=\"post\">"
...
## Präsentation ->wurde von Newsletter kopiert und nur die Namen angepasst.
if ($userinfo[user_pres] == 1) {
echo "<input type=\"radio\" name=\"user_pres\" value=\"1\" checked>"._YES."   "
."<input type=\"radio\" name=\"user_pres\" value=\"0\">"._NO."";
} elseif ($userinfo[user_pres] == 0) {
echo "<input type=\"radio\" name=\"user_pres\" value=\"1\">"._YES."   "
."<input type=\"radio\" name=\"user_pres\" value=\"0\" checked>"._NO."";
}

........

."<input type=\"hidden\" name=\"uname\" value=\"$userinfo[uname]\">"
   ."<input type=\"hidden\" name=\"uid\" value=\"$userinfo[uid]\">"
   ."<input type=\"hidden\" name=\"op\" value=\"saveuser\">"
   ."<tr><td colspan=\"2\" align=\"right\">"
   ."<input class=\"formbutton\" type=\"submit\" value=\""._SAVECHANGES."\">"
   ."</form>

function saveuser($uid, $realname, $uname, $email, $femail, $url, $pass, $vpass, $bio, $user_occ, $user_from, $user_intrest, $attach, $newsletter , $user_pres) {
 ## Hier erhalte ich immer den Fehler das Argument 15 ($user_pres) fehlen würde ??? Tausche ich die Reihenfolge erscheint der Fehler immer noch ???
.....
if ($pass != "") {
      cookiedecode($user);
      sql_query("LOCK TABLES ".$user_prefix."_users WRITE", $dbi);
      $pass = md5($pass);
      
      sql_query("update ".$user_prefix."_users set name='$realname', email='$email', femail='$femail', url='$url', pass='$pass', bio='$bio' , user_occ='$user_occ', user_from='$user_from', user_intrest='$user_intrest', newsletter='$newsletter' , user_pres='$user_pres' where uid='$uid'", $dbi);

} else {
      sql_query("update ".$user_prefix."_users set name='$realname', email='$email', femail='$femail', url='$url', bio='$bio', user_occ='$user_occ', user_from='$user_from', user_intrest='$user_intrest', newsletter='$newsletter' , user_pres='$user_pres' where uid='$uid'", $dbi);

Frage nun: Wo muß evtl. noch was geändert werden? Gibt es evtl. eine maximale Länge des übergebenen Strings an die Funktion?

      
 

   

[Editiert am 14/3/2003 von Carsten3110]

[Editiert am 14/3/2003 von Carsten3110]

Carsten3110

Hatte ich total übersehen - jetzt funkts !
Danke für die prompte Hilfe


MoniK

Zitatfunction saveuser($uid, $realname, $uname, $email, $femail, $url, $pass, $vpass, $bio, $user_occ, $user_from, $user_intrest, $attach, $newsletter , $user_pres) {
 ## Hier erhalte ich immer den Fehler das Argument 15 ($user_pres) fehlen würde ??? Tausche ich die Reihenfolge erscheint der Fehler immer noch ???

Hast Du das Feld denn unten in der Your_Account/index.php auch im case Teil zu der Funktion save_user hinzugefügt ??

      case "saveuser":
    saveuser($uid, $realname, $uname, $email, $femail, $url, $pass,
$vpass, $bio, $user_avatar, $user_icq, $user_occ, $user_from,
$user_intrest, $user_sig, $user_aim, $user_yim, $user_msnm, $attach,
$newsletter);   <---- muß da auch hin !!
    break;

Monika

[Editiert am 14/3/2003 von MoniK]