| 
      
       |  |  
       | 
  
  
   | 
     
      | 
 
  |  |  
  | Latest News | Latest Threads |  
  |  | 
    
     |  |  
     | 57.158 Posts & 4.945 Themen in 78 Foren |  |  |  
  |  |  
 
 
  
   | 
     
      |  | Forensuche |  |  Suchbegriff | Benutzerauswahl | Ergebnisse anzeigen |  
 
 
  |  |  
  | 
    
     |  | Signatur - Zeichenanzahl beschränken+prüfen 13 Beiträge in diesem Thema
 |  |  |  
 
  |  |  
  | 
    
     |  | 
       
        | 
          
           |  | 03.09.2012 - 09:48 Uhr |  |  
           |  |  |  
        | 
          
           | Hi, ich möchte gerne die Zeichenanzahl in der Signatur beschränken da bei uns einige halbe Romane in der Sig stehen haben und das im Forum stört.
 
 Es gibt Javascripts mit denen sich das auch prima lösen läßt - hab das hier getestet
 http://www.script-inside.de/Java/Forms/area.php
 
 nur was passiert wenn man js deaktiviert ?
 Gibts irgendeine Möglichkeit das die ganze Sache dann immernoch funktioniert bzw. geprüft wird ?
 Gibt es ausserdem die Möglichkeit die Zeilenanzahlt auf z.b. 5 oder 10 Zeilen zu minimieren ? Man kann ja auch 50 Zeilen a 3 Buchstaben machen - sieht auch irgendwie scheisse aus.
 
 Gruß
 
 
 |  
           |  |  
           |  |  |  |  |  |  
 
  |  |  
  | 
    
     | 
       
        | 
          
           |  WEBI Unberechenbares Urgestein
 |  
           |  |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  | 
       
        | 
          
           |  | 03.09.2012 - 15:54 Uhr |  |  
           |  |  |  
        | 
          
           | PHPKit 1.6.03: 
 Öffne die login/edtprofil.php und suche nach:
 
 
  und füge darunter folgendes hinzu:  |          |  | PHP-Quelltext         if ($_POST['ud_email']=='') $uderror=4;elseif (!emailcheck($_POST['ud_email'])) $uderror=5;
 else $ud_email=$_POST['ud_email'];
 |  |  
 
  Hier die Zeichenanzahl von max. 100 ergänzen.  |          |  | PHP-Quelltext         if(strlen($_POST['ud_usersig']) > 100) $uderror=7;else $ud_usersig=addslashes($_POST['ud_usersig']);
 |  |  
 Nun suchen wir innerhalb der obrig genannten Datei weiter nach:
 
 
  und kommentieren diese Zeile aus..  |          |  | PHP-Quelltext          $ud_usersig=addslashes($_POST['ud_usersig']);              |  |  
 
  Wobei dieses eher unwichtig erscheint, da es ähnlich dem else fungiert, da die Speicherung nur stattfindet, sofern kein Update-Fehler auftritt.  |          |  | PHP-Quelltext          #$ud_usersig=addslashes($_POST['ud_usersig']);              |  |  
 
 Nun öffnen wir die Datei admin/config/event.php und suchen nach folgendem:
 
 
  ersetzen es mit diesem:  |          |  | PHP-Quelltext        elseif ($event=="ud1" or $event=="ud2" or $event=="ud3" or $event=="ud4" or $event=="ud5" or $event=="ud6") {              |  |  
 
  Anschliessend in das Verzeichnis templates/ wechseln und dort eine neue Datei, mit dem Namen event_message_ud7.htm anlegen mit eventuell folgendem Inhalt:  |          |  | PHP-Quelltext        elseif ($event=="ud1" or $event=="ud2" or $event=="ud3" or $event=="ud4" or $event=="ud5" or $event=="ud6" or $event=="ud7") {              |  |  
 
 | Zitat Die von Ihnen verfasste Signatur überschreitet die maximale Anzahl an Zeichen.
 | 
 
 
 
 
 PHPKit 1.6.1:
 
 Öffne die inc/public/usereditprofile.php und suche nach:
 
 
  und füge darunter folgendes hinzu:  |          |  | PHP-Quelltext            if($_POST['ud_email']=='')$uderror='email_empty';
 elseif(!emailcheck($_POST['ud_email']))
 $uderror='email_invalid';
 else
 $ud_email=$_POST['ud_email'];
 |  |  
 
  Hier die Zeichenanzahl von max. 100 ergänzen.  |          |  | PHP-Quelltext                if(strlen($_POST['ud_usersig']) > 100) $uderror='profileupdate_sig_maxsigns';else $ud_usersig=addslashes($_POST['ud_usersig']);
 |  |  
 Weitersuchen nach:
 
 
  und ersetzen mit diesem (sofern noch nicht getan):  |          |  | PHP-Quelltext        pkHeaderLocation('editprofile','','uderror='.$uderror);              |  |  
 
    |          |  | PHP-Quelltext        pkHeaderLocation('usereditprofile','','event='.$uderror);                |  |  Nun öffnen wir die Datei inc/lang/de/event.php und suchen nach folgendem:
 
 
  fügen darunter folgendes hinzu:  |          |  | PHP-Quelltext        #ud6'eventtitle_profileupdate_nickname_invalid'=>'',
 'event_profileupdate_nickname_invalid'=>'Beim Update Ihres Benutzerprofils ist leider ein Fehler aufgetreten!<br/><br/>Der von Ihnen ausgewählte Spitzname ist ungültig, bitte wählen Sie einen anderen aus.',
 |  |  
 
  - Ungetestet!  |          |  | PHP-Quelltext        #ud7'eventtitle_profileupdate_sig_maxsigns'=>'Maximale Zeichenanzahl überschritten',
 'event_profileupdate_sig_maxsigns'=>'Die von Ihnen verfasste Signatur überschreitet die maximale Anzahl an Zeichen.',
 |  |  
 
 |  
           |  |  
           |  |  |  |  |  |  
 
  |  |  
  | 
    
     |  | 
       
        | 
          
           |  | 03.09.2012 - 16:08 Uhr |  |  
           |  |  |  
        | 
          
           | Du kannst auch an besagter Stelle dies einfügen: 
 1.6.03
 
  ---  |          |  | PHP-Quelltext            $pSig_maxString =20;$pSig_maxBreak  =5;
 $pSig_post      =$_POST['ud_usersig'];
 $pSig_post      =explode("\n", $pSig_post);
 $pSig_post      =count($pSig_post);
 
 
 if(isset($_POST['ud_usersig']) && trim($_POST['ud_usersig'])!='' && (strlen($_POST['ud_usersig'])>$pSig_maxString || $pSig_post>$pSig_maxBreak))
 {
 $uderror=7;
 }
 |  |  
 1.6.01
 
  //edit  |          |  | PHP-Quelltext            $pSig_maxString =20;$pSig_maxBreak  =5;
 $pSig_post      =$_POST['ud_usersig'];
 $pSig_post      =explode("\n", $pSig_post);
 $pSig_post      =count($pSig_post);
 
 
 if(isset($_POST['ud_usersig']) && trim($_POST['ud_usersig'])!='' && (strlen($_POST['ud_usersig'])>$pSig_maxString || $pSig_post>$pSig_maxBreak))
 {
 $uderror='sig_maxsigns';
 }
 |  |  WEBI, den Else-Part bei der Fehlerabfrage kannste eh weg lassen, da ja eh weitergeleitet wird. Post-Werte gehen also eh verloren.
 Und bei der 1.6.1 ist die Fehlermeldung eh für die Katz, da, z.B. beim Rohkit, eine unbekannte Seite erscheint.
 
 Wenn er also die 1.6.1 benutzt, müsste noch das geändert werden:
 Suche in der inc/public/usereditprofile.php nach dem:
 
  Und mache daraus das:  |          |  | PHP-Quelltext        pkHeaderLocation('editprofile','','uderror='.$uderror);              |  |  
    |          |  | PHP-Quelltext        pkHeaderLocation('usereditprofile','','event='.$uderror);              |  |  
 
 
 
  |  |  
  | Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von k!r!ka - 03.09.2012 - 16:14 Uhr |  |  
           |  |  
           |  |  |  |  |  |  
 
  |  |  
  | 
    
     | 
       
        | 
          
           |  WEBI Unberechenbares Urgestein
 |  
           |  |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  | 
       
        | 
          
           |  | 03.09.2012 - 16:10 Uhr |  |  
           |  |  |  
        | 
          
           | So wäre auch die Zeilenproblematik berücksichtigt, es müssten nur zzgl. die Änderung an der event.php vorgenommen werden, je nach PHPKit-Version samt Erstellen eines weiteren Templates(1.6.03). Für mich nur fraglich warum jemand XX Zeilen in Anspruch nehmen sollte bei einer Signatur.   
 @k!r!ka, ganz im Gegenteil, da die Variable $ud_usersig andernfalls ja keinen Inhalt bzw. gar nicht erst vorhanden wäre. Sofern wie oben beschrieben man den Teil entfernt, wie ich aber bereits schrieb im Grunde genommen unnütz. Sofern man den Code natürlich stehen lassen würde, ganz klar; wäre/ist das else total sinnlos.
 
 War ungetestet, bei solch minimalen Teilchen glaube ist ein Test nicht wirklich von Nöten. Bzgl. der Headerlocation, da hatte ich nun gar nicht dran gedacht - ganz vergessen das man ja auch noch stets deren Fehler ausbügeln muss.
  
 
 |  
           |  |  
           |  |  |  |  |  |  
 
  |  |  
  | 
    
     |  | 
       
        | 
          
           |  | 03.09.2012 - 19:54 Uhr |  |  
           |  |  |  
        |  |  |  |  
 
  |  |  
  | 
    
     | 
       
        | 
          
           |  WEBI Unberechenbares Urgestein
 |  
           |  |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  | 
       
        | 
          
           |  | 03.09.2012 - 20:11 Uhr |  |  
           |  |  |  
        | 
          
           | Es sind 2 Varianten, nur das eben die von k!r!ka umfangreicher ist und auch die Zeilenumbrüche berücksichtigt. 32 Zeilen? Du möchtest nicht wissen was einem Benutzer auf dieser Seite, mit einer solchen Signatur drohen würde. Ggf. hetze ich diesem Jardin auf dem Hals und k!r!ka kommt daher und faselt mal wieder von Weltfrieden...
 
 Zusammengefasst, PHPKit, 1.6.1:
 
 Öffne die inc/public/usereditprofile.php und suche nach:
 
 
  Füge darunter folgendes hinzu:  |          |  | PHP-Quelltext            if($_POST['ud_email']=='')$uderror='email_empty';
 elseif(!emailcheck($_POST['ud_email']))
 $uderror='email_invalid';
 else
 $ud_email=$_POST['ud_email'];
 |  |  
 
  Werte von $pSig_maxString (Maximale Zeichen) und $pSig_maxBreak (Maximale Zeilenumbrüche) den Wünschen nach anpassen.  |          |  | PHP-Quelltext        # Signatur - Zeichen & Zeilen Limit - SOC$pSig_maxString =20;
 $pSig_maxBreak  =5;
 $pSig_post      =$_POST['ud_usersig'];
 $pSig_post      =explode("\n", $pSig_post);
 $pSig_post      =count($pSig_post);
 if(isset($_POST['ud_usersig']) && trim($_POST['ud_usersig'])!='' && (strlen($_POST['ud_usersig'])>$pSig_maxString || $pSig_post>$pSig_maxBreak))
 {
 $uderror='profileupdate_sig_maxsigns';
 }
 # Signatur - Zeichen & Zeilen Limit - EOC
 |  |  
 Weitersuchen nach (Sofern vorhanden):
 
 
  Ersetzen mit diesem (Sofern nicht bereits vorhanden):  |          |  | PHP-Quelltext        pkHeaderLocation('editprofile','','uderror='.$uderror);              |  |  
 
  Nun öffnen wir die Datei inc/lang/de/event.php und suchen nach folgendem:  |          |  | PHP-Quelltext        pkHeaderLocation('usereditprofile','','event='.$uderror);              |  |  
 
  fügen darunter folgendes hinzu:  |          |  | PHP-Quelltext        #ud6'eventtitle_profileupdate_nickname_invalid'=>'',
 'event_profileupdate_nickname_invalid'=>'Beim Update Ihres Benutzerprofils ist leider ein Fehler aufgetreten!<br/><br/>Der von Ihnen ausgewählte Spitzname ist ungültig, bitte wählen Sie einen anderen aus.',
 |  |  
 
    |          |  | PHP-Quelltext        #ud7'eventtitle_profileupdate_sig_maxsigns'=>'Maximale Zeichenanzahl überschritten',
 'event_profileupdate_sig_maxsigns'=>'Die von Ihnen verfasste Signatur überschreitet die maximale Anzahl an Zeichen.',
 |  |  
 Zusammengefasst, PHPKit 1.6.03:
 
 Öffne die login/edtprofil.php und suche nach:
 
 
  Füge darunter folgendes hinzu:  |          |  | PHP-Quelltext         if ($_POST['ud_email']=='') $uderror=4;elseif (!emailcheck($_POST['ud_email'])) $uderror=5;
 else $ud_email=$_POST['ud_email'];
 |  |  
 
  Werte von $pSig_maxString (Maximale Zeichen) und $pSig_maxBreak (Maximale Zeilenumbrüche) den Wünschen nach anpassen.  |          |  | PHP-Quelltext        # Signatur - Zeichen & Zeilen Limit - SOC$pSig_maxString =20;
 $pSig_maxBreak  =5;
 $pSig_post      =$_POST['ud_usersig'];
 $pSig_post      =explode("\n", $pSig_post);
 $pSig_post      =count($pSig_post);
 if(isset($_POST['ud_usersig']) && trim($_POST['ud_usersig'])!='' && (strlen($_POST['ud_usersig'])>$pSig_maxString || $pSig_post>$pSig_maxBreak))
 {
 $uderror=7;
 }
 # Signatur - Zeichen & Zeilen Limit - EOC
 |  |  
 Nun öffnen wir die Datei admin/config/event.php und suchen nach folgendem:
 
 
  ersetzen es mit diesem:  |          |  | PHP-Quelltext        elseif ($event=="ud1" or $event=="ud2" or $event=="ud3" or $event=="ud4" or $event=="ud5" or $event=="ud6") {              |  |  
 
  Anschliessend in das Verzeichnis templates/ wechseln und dort eine neue Datei, mit dem Namen event_message_ud7.htm anlegen mit eventuell folgendem Inhalt:  |          |  | PHP-Quelltext        elseif ($event=="ud1" or $event=="ud2" or $event=="ud3" or $event=="ud4" or $event=="ud5" or $event=="ud6" or $event=="ud7") {              |  |  
 
 | Zitat Die von Ihnen verfasste Signatur überschreitet die maximale Anzahl an Zeichen.
 | 
 
 
 
 
 Die 1. Variante im zweiten Beitrag dieses Threads berücksichtigt lediglich keine Zeilenumbrüche. Die hier zusammengefasste Anleitung dient zum Setzen eines Limits an Zeichen sowie Zeilenumbrüche innerhalb der Signatur.
 
 
 |  
           |  |  
           |  |  |  |  |  |  
 
  |  |  
  | 
    
     |  | 
       
        | 
          
           |  | 03.09.2012 - 20:38 Uhr |  |  
           |  |  |  
        | 
          
           | | Zitat Original geschrieben von WEBI
 
 Es sind 2 Varianten, nur das eben die von k!r!ka umfangreicher ist und auch die Zeilenumbrüche berücksichtigt.
 | 
 
 
 Wobei man das noch erweitern kann. Mit jetziger Methode zählt jedes Zeichen, unabhängig vom Zeilenumbruch. Dies könnt man allerdings noch Zeilenweise machen
  
 Was hast du gegen Weltfrieden, an dem ich immer noch arbeite?
 
 
 |  
           |  |  
           |  |  |  |  |  |  
 
  |  |  
  | 
    
     | 
       
        | 
          
           |  WEBI Unberechenbares Urgestein
 |  
           |  |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  | 
       
        | 
          
           |  | 03.09.2012 - 20:51 Uhr |  |  
           |  |  |  
        | 
          
           | Na warum denn nicht, käme das Javascript wiederholte male zum Einsatz - wenn man 5 Zeilen zulässt, 5 Inputs, a 20 Zeichen?  Wie schauts aus, eine weitere Smilieliste, nur für Dich, k!r!ka? Und wie steht es momentan um den Weltfrieden?
 
 
 | Zitat Original geschrieben von fireball1982
 
 soll ich da die 100 ändern oder bei sig_maxsigns die Zahl die davor steht (100 in deinem Code) nochmal reinschreiben ? Stelle mich wohl etwas blöd an *g
 | 
 In dem Fall würde die Zahl (100) nach Belieben geändert werden müssen. Was bei letzteren Methode durch die innerhalb der Zusammenfassung genannten Variablen ersetzt wurde. sig_maxsigns dient als Definition des Fehlertextes und sollte unverändert bleiben.
 
 
 | Zitat Original geschrieben von fireball1982
 
 Sind das jetzt 2 verschiedene Methoden von euch oder ein part 1 webi part 2 k!r!ka ?
 | 
 Sowohl als auch.
  
 
 |  
           |  |  
           |  |  |  |  |  |  
 
  |  |  
  | 
    
     |  | 
       
        | 
          
           |  | 04.09.2012 - 14:07 Uhr |  |  
           |  |  |  
        | 
          
           | Ihr seit 2 Komiker  
 Ich habe jetzt erstmal die Methode von Webi (Post 21744) getestet, das ganze läuft wohl allerdings habe ich mit der "Sprachvariable" wohl ein Problem, da noch ein anderer Hack eingebaut ist,diese wird garnicht angezeigt.
 
 Bei mir schaut die usereditprofile.php auch ein wenig anders aus, weiß nicht ob ich dort was verkehrt gemacht hab jetzt.
 Die Änderung für die Signatur ist Zeile 135-145
 
 Die 2. Suchstelle
 
    |          |  | PHP-Quelltext        pkHeaderLocation('editprofile','','uderror='.$uderror);               |  |  gibts bei mir nicht, du schreibst ja auch falls vorhanden, bei mir ist das einzige was so ähnlich aussieht
 
    |          |  | PHP-Quelltext        pkHeaderLocation('inc/lang/de/event.php','','event='.$uderror);              |  |     |  |  dort habe ich jetzt nichts verändert
 
 
  Hier klicken zum aufklappen usereditprofile.php    |          |                | 1 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 
 |  | PHP-Quelltext        <?php##################################################################
 #                                                                #
 #                                                                #
 #                            PHPKIT                              #
 #          --------------------------------------------          #
 #          Copyright (c) 2002-2003 Gersöne & Schott GbR          #
 #                                                                #
 #                                                                #
 # ############################################################## #
 #                                                                #
 #     Diese Datei / die PHPKIT-Software ist keine Freeware!      #
 #   Für weitere Information besuchen Sie bitte unsere Webseite   #
 #             oder kontaktieren uns per E-Mail:                  #
 #                                                                #
 #       This file / the PHPKIT-software is not freeware!         #
 #       For further informations please vistit our website       #
 #                 or contact us via email:                       #
 #                                                                #
 #              Website: http://www.phpkit.de                     #
 #                   Email: info@phpkit.de                        #
 #                                                                #
 # ############################################################## #
 #                                                                #
 #  File:          /inc/public/usereditprofile.php                #
 #  Author:        Pierre Gersöne                                 #
 #  Created:       Version 1.6.1 - 2004-05-09                     #
 #  Last Modified: Version 1.6.1 - 2004-05-09                     #
 #  Description:   not available for this file                    #
 #                                                                #
 # ############################################################## #
 #                                                                #
 #     SIE SIND NICHT BERECHTIGT, UNRECHTMÄSSIGE KOPIEN DIESER    #
 #  DATEI ZU ERSTELLEN UND/ODER DIESE INFORMATIONEN ZU ENTFERNEN  #
 #                                                                #
 #    YOU ARE NOT AUTHORISED TO CREATE ILLEGAL COPIES OF THIS     #
 #          FILE AND/OR TO REMOVE THIS INFORMATIONS               #
 #                                                                #
 ##################################################################
 
 
 $S=&$SQL;
 
 pkLoadFunc('user');
 
 $info=array('user_id'=>0);
 $bd_option_year=$uderror=$editprofile_userfield=
 $user_email_option_1=$user_email_option_0=$event=
 $user_sex_option_1=$user_sex_option_2=$user_sex_option_0=NULL;
 
 if(pkGetUservalue('id')) {
 $info=$S->fetch_assoc($S->query("SELECT
 user_id,
 user_name,
 user_pw,
 user_profillock,
 user_status,
 user_nick,
 user_pw,
 user_email,
 user_sex,
 user_hpage,
 user_aimid,
 user_yim,
 user_icqid,
 user_emailshow,
 user_country,
 user_bd_day,
 user_bd_month,
 user_bd_year,
 signin,
 user_qou,
 user_sig,
 user_hobby
 FROM ".pkSQLTAB_USER."
 WHERE user_name='".$SQL->f(pkGetUservalue('name'))."' AND
 user_pw='".$SQL->f(pkGetUservalue('pass'))."' AND
 user_id='".$SQL->f(pkGetUservalue('id'))."'
 LIMIT 1"));
 }
 
 if(!pkGetUservalue('id') || $info['user_id']!=pkGetUservalue('id'))
 return pkEvent('access_refused');
 
 if($info['user_profillock']==1)
 return pkEvent('eventtitle_profile_update_disabled');
 
 
 $ACTION=isset($_POST['action']) ? $_POST['action'] : false;
 
 if(isset($_POST['save']) && $ACTION==$_POST['save']) {
 $_POST['ud_nick']=trim($_POST['ud_nick']);
 $_POST['ud_email']=trim($_POST['ud_email']);
 
 /********************************  Pflichtfeld Anfang. Original wir nur angepasst  ********************************/
 if($_POST['user_bd_month']=='0' or $_POST['user_bd_day']=='0' or $_POST['user_bd_year']=='0') $uderror='profileupdate_kein_datum_angegeben';
 
 if(!checkdate($_POST['user_bd_month'],$_POST['user_bd_day'],$_POST['user_bd_year'])) $uderror='profileupdate_wechsel_datum';
 
 if ($_POST['ud_country']=='def') $uderror='profileupdate_kein_bundesland_gewaehlt';
 elseif ($_POST['ud_country']=='00') $uderror='profileupdate_kein_bundesland_gewaehlt';
 elseif ($_POST['ud_country']=='') $uderror='profileupdate_kein_bundesland_gewaehlt';
 if ($_POST['ud_sex']=='d') $uderror='profileupdate_kein_geschlecht_gewaehlt';
 
 if(is_array($_POST['profilefields']))
 foreach($_POST['profilefields'] as $id => $value){
 $felder=$DB->fetch_array($DB->query("SELECT * FROM `".$db_tab['profilefields']."` WHERE `profilefields_id`='".intval($id)."' LIMIT 1"));
 if($felder['profilefields_pflicht']==1){
 if($value=="") $uderror='profileupdate_profilfelder_nicht_ausgefuellt';}
 if($felder['profilefields_area']==2){
 if(preg_match('/[^-.0-9]/', $value)) $uderror='profileupdate_nummerisch';}}
 
 if($_POST['ud_newpw1']!=$_POST['ud_newpw2'])
 $uderror='profileupdate_passwords_unequal';
 elseif($_POST['ud_newpw1']==$_POST['ud_newpw2'] && $_POST['ud_newpw1']!='')
 $ud_userpw=md5($_POST['ud_newpw1']);
 elseif($ud_newpw1=="" && $ud_newpw2=="")
 $ud_userpw=$USER['pass'];
 if($_POST['ud_email']=='')
 $uderror='profileupdate_email_empty';
 elseif(!emailcheck($_POST['ud_email']))
 $uderror='profileupdate_email_invalid';
 
 elseif($_POST['ud_email']!='')
 $getmail=$S->fetch_array($S->query("SELECT
 COUNT(user_email) as count
 FROM ".pkSQLTAB_USER."
 WHERE user_email='".$S->f($_POST['ud_email'])."'
 AND user_name!='".$S->f($USER['name'])."' LIMIT 1"));
 if($getmail['count']>0)
 $uderror='profileupdate_email_in_use';
 else
 $ud_email=$_POST['ud_email'];
 
 # Signatur - Zeichen & Zeilen Limit - SOC
 $pSig_maxString =500;
 $pSig_maxBreak  =10;
 $pSig_post      =$_POST['ud_usersig'];
 $pSig_post      =explode("\n", $pSig_post);
 $pSig_post      =count($pSig_post);
 if(isset($_POST['ud_usersig']) && trim($_POST['ud_usersig'])!='' && (strlen($_POST['ud_usersig'])>$pSig_maxString || $pSig_post>$pSig_maxBreak))
 {
 $uderror='sig_maxsigns';
 }
 # Signatur - Zeichen & Zeilen Limit - EOC
 
 if($_POST['ud_nick']=='')
 $uderror='profileupdate_nickname_empty';
 elseif(!checkusername($_POST['ud_nick']))
 $uderror='profileupdate_nickname_invalid';
 else {
 $getnick=$S->fetch_array($S->query("SELECT
 COUNT(user_name) as count
 FROM ".pkSQLTAB_USER."
 WHERE user_nick='".$S->f($_POST['ud_nick'])."'
 AND user_name!='".$S->f($USER['name'])."'
 LIMIT 1"));
 
 if($getnick['count']>0)
 $uderror='profileupdate_nickname_in_use';
 }
 if($uderror)
 pkHeaderLocation('inc/lang/de/event.php','','event='.$uderror);
 /********************************  Pflichtfeld Ende.   Original wir nur angepasst  ********************************/
 
 $vars=array(
 'ud_nick'=>'ud_nick',
 'ud_hpage'=>'ud_hpage',
 'ud_aimid'=>'ud_aimid',
 'ud_yim'=>'ud_yim',
 'ud_icqid'=>'ud_icqid',
 'ud_usersig'=>'ud_usersig',
 'ud_userqou'=>'ud_userqou',
 'ud_userhobby'=>'ud_userhobby',
 'ud_sex'=>'ud_sex',
 'ud_emailshow'=>'ud_emailshow',
 'ud_country'=>'ud_country',
 'user_bd_day'=>'user_bd_day',
 'user_bd_month'=>'user_bd_month',
 'user_bd_year'=>'user_bd_year'
 );
 
 foreach($vars as $k=>$v)
 $$k=$ENV->_post($v);
 
 $ud_hpage=pkUrlCheck($ud_hpage) ? $ud_hpage : '';
 
 if($user_bd_year > (date('Y',pkTIME)-5) || $user_bd_year<=1900 || !checkdate($user_bd_month,$user_bd_day,$user_bd_year))
 $user_bd_day=$user_bd_month=$user_bd_year=0;
 
 /**************************************** Signatur HACK Anfang ****************************************/
 $ud_usersig=preg_replace("#\[img(.*)\]#Usi","[sig]",$ud_usersig);
 $ud_usersig=preg_replace("#\[/img(.*)\]#Usi","[/sig]",$ud_usersig);
 /**************************************** Signatur HACK Ende   ****************************************/
 
 $S->query("UPDATE ".pkSQLTAB_USER." SET
 uid='".pkRand()."',
 user_pw='".$S->F($ud_userpw)."',
 user_email='".$S->F($ud_email)."',
 user_emailshow='".$S->F($ud_emailshow)."',
 user_nick='".$S->F($ud_nick)."',
 user_sex='".$S->F($ud_sex)."',
 user_country='".$S->F($ud_country)."',
 user_hpage='".$S->F($ud_hpage)."',
 user_aimid='".$S->F($ud_aimid)."',
 user_yim='".$S->F($ud_yim)."',
 user_icqid='".$S->F($ud_icqid)."',
 user_sig='".$S->F($ud_usersig)."',
 user_qou='".$S->F($ud_userqou)."',
 user_hobby='".$S->F($ud_userhobby)."',
 user_bd_day='".$S->F($user_bd_day)."',
 user_bd_month='".$S->F($user_bd_month)."',
 user_bd_year='".$S->F($user_bd_year)."'
 WHERE user_id='".intval($USER['id'])."'"
 );
 
 $info=$S->fetch_array($S->query("SELECT
 *
 FROM ".pkSQLTAB_USER."
 WHERE user_id='".$USER['id']."'"));
 
 if(isset($_POST['profilefields']) && is_array($_POST['profilefields'])) {
 $query=NULL;
 $userfield_counter=$S->fetch_array($S->query("SELECT
 COUNT(userid) as counter
 FROM ".$db_tab['userfields']."
 WHERE userid='".intval($USER['id'])."' LIMIT 1"));
 
 if($userfield_counter['counter']<1)
 $S->query("INSERT INTO ".pkSQLTAB_USER_FIELDS." (userid) VALUES ('".intval($USER['id'])."')");
 
 foreach($_POST['profilefields'] as $id=>$value)
 $query.=(empty($query) ? '' : ',')."field_".intval($id)."='".$S->f($value)."'";
 
 if($query)
 $S->query("UPDATE ".pkSQLTAB_USER_FIELDS."
 SET ".$query."
 WHERE userid='".intval($USER['id'])."'");
 }
 
 session_register("USER");
 
 $array=array(
 'nick'=>'nick',
 'pass'=>'pw',
 'email'=>'email',
 'sex'=>'sex',
 'hpage'=>'hpage',
 'icqid'=>'icqid',
 'status'=>'status'
 );
 
 foreach($array as $k=>$v)
 $USER[$k]=$info['user_'.$v];
 
 $SESSION->save('USER',$USER);
 
 pkHeaderLocation('usereditprofile','','event=profileupdate');
 }
 
 
 pkLoadLang('profile');
 
 
 $userfields=$S->fetch_assoc($S->query("SELECT *
 FROM ".pkSQLTAB_USER_FIELDS."
 WHERE userid='".$USER['id']."' LIMIT 1"));
 
 /********************************  Pflichtfeld Anfang. Original wir nur angepasst  ********************************/
 $result=$S->query("SELECT
 profilefields_id,
 profilefields_description,
 profilefields_name,
 profilefields_maxlength,
 profilefields_groups,
 profilefields_status_edit,
 profilefields_pflicht,
 profilefields_area
 FROM ".pkSQLTAB_USER_PROFILEFIELDS."
 ORDER by profilefields_sorts ASC, profilefields_order ASC");
 while(list($fieldid,$fielddescription,$fieldname,$fieldlength,$fieldgroup,$fieldstatusedit,$fieldpflicht,$fieldarea)=$S->fetch_row($result)) {
 $value=pkEntities($userfields['field_'.$fieldid]);
 $name='profilefields['.$fieldid.']';
 if($fieldgroup !="")
 eval ("\$user_ext_group = \"".pkTpl("usereditprofile_userfield_group")."\";");
 else unset($user_ext_group);
 if (getrights($fieldstatusedit)=="true"){
 if($fieldpflicht=="0" AND $fieldarea=="0"){ unset($pflichtfeld);
 eval ("\$editprofile_userfield.= \"".pkTpl("usereditprofile_userfield")."\";");}
 elseif($fieldpflicht=="0" AND $fieldarea=="1"){ unset($pflichtfeld);
 eval ("\$editprofile_userfield.= \"".pkTpl("usereditprofile_userfield_area")."\";");}
 elseif($fieldpflicht=="0" AND $fieldarea=="2"){ unset($pflichtfeld);
 eval ("\$editprofile_userfield.= \"".pkTpl("usereditprofile_userfield_num")."\";");}
 elseif($fieldpflicht=="1" AND $fieldarea=="0"){$pflichtfeld='<span style="color:#d70007;">*</span>';
 eval ("\$editprofile_userfield.= \"".pkTpl("usereditprofile_userfield")."\";");}
 elseif($fieldpflicht=="1" AND $fieldarea=="1"){$pflichtfeld='<span style="color:#d70007;">*</span>';
 eval ("\$editprofile_userfield.= \"".pkTpl("usereditprofile_userfield_area")."\";");}
 elseif($fieldpflicht=="1" AND $fieldarea=="2"){$pflichtfeld='<span style="color:#d70007;">*</span>';
 eval ("\$editprofile_userfield.= \"".pkTpl("usereditprofile_userfield_num")."\";");}
 } else eval ("\$editprofile_userfield.= \"".pkTpl("usereditprofile_no_edit")."\";");
 }
 /********************************  Pflichtfeld Ende.   Original wir nur angepasst  ********************************/
 
 switch($info['user_sex']) {
 case 'w' :
 $user_sex_option_1='selected="selected"';
 break;
 case 'm' :
 $user_sex_option_2='selected="selected"';
 break;
 default :
 $user_sex_option_0='selected="selected"';
 }
 
 foreach(range(1,31) as $d)
 $bd_option_day.='<option value="'.$d.'"'.($info['user_bd_day']==$d ? ' selected="selected"' : '').'>'.$d.'</option>';
 
 foreach(range(1,12) as $m)
 $bd_option_month.='<option value="'.$m.'"'.($info['user_bd_month']==$m ? ' selected="selected"' : '').'>'.pkGetSpecialLang('month',$m).'</option>';
 
 foreach(range(date('Y')-5,1900) as $y)
 $bd_option_year.='<option '.($info['user_bd_year']==$y ? ' selected="selected"' : '').'>'.$y.'</option>';
 
 
 $action_target=pkLink('usereditprofile');
 
 $user_name=pkEntities($info['user_name']);
 $user_nick=pkEntities($info['user_nick']);
 $user_email=pkEntities($info['user_email']);
 $user_aimid=pkEntities($info['user_aimid']);
 $user_yim=pkEntities($info['user_yim']);
 $user_sig=pkEntities($info['user_sig']);
 $user_qou=pkEntities($info['user_qou']);
 $user_hobby=pkEntities($info['user_hobby']);
 $user_hpage=pkEntities($info['user_hpage']);
 
 $user_status=pkUserStatus($info['user_status']);
 $user_signin=formattime($info['signin']);
 $user_country=pkUserCountryOptionlist($info['user_country']);
 $user_icqid=intval($info['user_icqid'])>0 ? intval($info['user_icqid']) : NULL;
 $info['user_emailshow']==1 ? $user_email_option_1=' checked="checked"' : $user_email_option_0=' checked="checked"';
 
 $user_navigation=pkUsernavigation();
 
 $L_save=pkGetLang('save');
 $L_reset=pkGetLang('reset');
 
 foreach(array(
 'edit_profile',
 'username',
 'username_description',
 'userstatus',
 'userstatus_description',
 'member_since',
 'required_specifications',
 'nickname',
 'nickname_description',
 'password',
 'password_description',
 'confirm_password',
 'confirm_password_description',
 'email',
 'email_description',
 'optional_specifications',
 'show_email',
 'show_email_description',
 'sex',
 'sex_description',
 'sex_not_specified',
 'sex_male',
 'sex_female',
 'dateofbirth',
 'dateofbirth_description',
 'dateofbirth_day',
 'dateofbirth_month',
 'dateofbirth_year',
 'origin',
 'origin_description',
 'origin_ger',
 'origin_aut',
 'origin_ch',
 'origin_nl',
 'origin_oth',
 'origin_def',
 'homepage',
 'homepage_description',
 'aim_screenname',
 'aim_screenname_description',
 'yim',
 'yim_description',
 'icq',
 'icq_description',
 'signature',
 'signature_description',
 'quotation',
 'quotation_description',
 'hobbies',
 'hobbies_description'
 ) as $l) {
 $v='L_editprofile_'.$l;
 $$v=pkGetLang($l);
 }
 
 eval("\$site_body.= \"".pkTpl("usereditprofile")."\";");
 unset($S);
 ?>
 
 |  |     |  | 
 in der event.php gab es ud7 schon durch diesen Profilfeldhack
 ich hab deine Änderung als ud14 eingebaut und das Template auch dementsprechend umbenannt.
 
 Wenn ich nun zuviele Zeichen in der Signatur eingebe und speichern drücke bekomme ich ne Meldung
 
 
 | Zitat L_eventtitle_sig_maxsigns
 
 L_event_sig_maxsigns
 | 
 
 
 was hab ich da verkehrt gemacht ?
 
 Werd die 2 Dateien mal speichern und die 2. Variante auch mal testen.
 
 
 
 
  |  |  
  | Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von fireball1982 - 04.09.2012 - 14:07 Uhr |  |  
           |  |  
           |  |  |  |  |  |  
 
  |  |  
  | 
    
     | 
       
        | 
          
           |  WEBI Unberechenbares Urgestein
 |  
           |  |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  | 
       
        | 
          
           |  | 04.09.2012 - 15:31 Uhr |  |  
           |  |  |  
        | 
          
           | Öffne die inc/public/usereditprofile.php und ändere deine Passage: 
 
  In folgende um:  |          |  | PHP-Quelltext        pkHeaderLocation('inc/lang/de/event.php','','event='.$uderror);              |  |  
 
  Macht keinen Unterschied, sieht doch aber schöner aus. ^^  |          |  | PHP-Quelltext        #pkHeaderLocation('inc/lang/de/event.php','','event='.$uderror);pkHeaderLocation('usereditprofile','','event='.$uderror);
 |  |  
 Nun ersetze noch die zuvor implementierte Zeile:
 
 
  um, in diese:  |          |  | PHP-Quelltext                $uderror='sig_maxsigns';               |  |  
 
  Info: Obriger Code, Post: #21744; angepasst.  |          |  | PHP-Quelltext                $uderror='profileupdate_sig_maxsigns';              |  |  
 Ein Template braucht man bei der 1.6.1 nicht anlegen, da das ganze über ein Array und einem dazugehörigen Template läuft, so benötigt man nicht x-verschiedene Templates, wie es noch bei der 1.6.03 der Fall war. Das (#udX) ist ja lediglich eine ausdokumentierte Nummerierung zur Übersicht. Nicht so wie bei der 1.6.03, wo diese noch festgelegt werden muss. Es war folglich nur ein Fehler in der Definierung der Fehlermeldung, die Funktionalität musste daran jedoch nicht glauben.
  
 Zudem wäre zu empfehlen, die Fehler bei den Standard-Fehlermeldungen innerhalb des Profilupdates, sofern noch nicht geschehen; zu beheben. Das betrifft die Angaben der E-Mail Adresse, des Nicknamen sowie die, des Passwortes.
 
 
  Wird zu:  |          |  | PHP-Quelltext                $uderror='passwords_unequal';              |  |  
 
  Weiter wird:  |          |  | PHP-Quelltext                $uderror='profileupdate_passwords_unequal';              |  |  
 
  zu:  |          |  | PHP-Quelltext                $uderror='email_empty';              |  |  
 
  ausserdem:  |          |  | PHP-Quelltext                $uderror='profileupdate_email_empty';              |  |  
 
  ersetzen mit:  |          |  | PHP-Quelltext                $uderror='email_invalid';              |  |  
 
  als auch:  |          |  | PHP-Quelltext                $uderror='profileupdate_email_invalid';              |  |  
 
  ändern in:  |          |  | PHP-Quelltext                $uderror='nickname_invalid';              |  |  
 
    |          |  | PHP-Quelltext                $uderror='profileupdate_nickname_invalid';              |  |  
 
 |  
           |  |  
           |  |  |  |  |  |  
 
  |  |  
  | 
    
     |  | 
       
        | 
          
           |  | 04.09.2012 - 15:45 Uhr |  |  
           |  |  |  
        | 
          
           | | Zitat Original geschrieben von fireball1982
 
 Ihr seit 2 Komiker
   | 
 
 Wir tun unser bestes ..
 
 
 
 | Zitat Original geschrieben von fireball1982
 
 Ich habe jetzt erstmal die Methode von Webi (Post 21744) getestet,
 | 
 
 
 Eigentlich ist es meine Methode, nur hat WEBI den anderen Kram, den ich posten wollte eh schon geschrieben ..
  
 
 |  
           |  |  
           |  |  |  |  |  |  
 
  |  |  
  | 
    
     | 
       
        | 
          
           |  WEBI Unberechenbares Urgestein
 |  
           |  |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  
        |  |  | 
       
        | 
          
           |  | 04.09.2012 - 15:57 Uhr |  |  
           |  |  |  
        | 
          
           | | Zitat Original geschrieben von k!r!ka
 Eigentlich ist es meine Methode, nur hat WEBI den anderen Kram, den ich posten wollte eh schon geschrieben ..
   | 
 Hey es beinhalt noch immer meine mitlerweile funktionierende Fehlermeldung. Also, geh dich um den Weltfrieden kümmern.
  
 
 |  
           |  |  
           |  |  |  |  |  |  
 
  |  |  
  | 
    
     |  | 
       
        | 
          
           |  | 04.09.2012 - 17:29 Uhr |  |  
           |  |  |  
        | 
          
           | Läuft sehr gut, jetzt muß ich die betreffenden User nur noch in die Signatur-Änderungs-Falle locken   
 Ich bedanke mich für die tolle Arbeit. Friede sei mit euch.
 
 
 |  
           |  |  
           |  |  |  |  |  |  
 
 
  | 
    
     |  | Ähnliche Themen |  
     |  |  |  |  
      | 
 |  |  |  
       |  |  |