|
|
Latest News |
Latest Threads |
|
|
55.080 Posts & 4.945 Themen in 78 Foren |
|
|
|
|
Forensuche |
|
Suchbegriff |
Benutzerauswahl |
Ergebnisse anzeigen |
|
|
PHP 7 33 Beiträge in diesem Thema |
|
|
|
|
|
06.07.2016 - 21:07 Uhr |
|
|
|
Das hatte ich gar nicht mehr drin, mit der Zeitumstellung
Die links sehen aus, wie auf dem Bild
Skaliert auf 550 x 266 Pixel
Vor Montag, werde ich wohl nicht dazu kommen, das zu testen (Urlaub).
Denke aber die links, haben nichts, mit der Zeitumstellung zu tun. Melde mich dann aber Anfang der Woche. Danke für deine Geduld
|
|
|
|
|
|
|
|
|
|
14.07.2016 - 11:11 Uhr |
|
|
|
Habe dir mal eine PN geschickt
|
|
|
|
|
|
|
|
|
|
14.07.2016 - 19:09 Uhr |
|
|
|
Nächtest mal sagste das eine Datei nicht dem Original gleicht Problem sollte behoben sein.
|
|
|
|
|
|
|
|
|
|
15.07.2016 - 06:37 Uhr |
|
|
|
|
|
|
|
|
|
15.07.2016 - 13:12 Uhr |
|
|
|
Problem gelöst. Hatte was im Post weiter vorne vergessen.
Hier nochmal die Änderung zu Info (ist auch im entsprechenden Post editiert):
- pkinc/class/bbcode.php
- Öffne o.g. Datei und suche das:
| PHP-Quelltext # PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
$pattern = "#\[(".$code['tag'].")\](.*)\[/\\1\]#isuSU"; #format: link
$text = preg_replace_callback($pattern, function($match) use ($code, $func) { return $this->$func($code['html'],$match[2]); }, $text);
$pattern = "#\[(".$code['tag'].")=(.*)\](.*)\[/\\1\]#isuSU"; #format text
$text = preg_replace_callback($pattern, function($match) use ($code, $func) { return $this->$func($code['html'],$match[2]); }, $text);
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX | | |
Und mache daraus das:
| PHP-Quelltext # PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
$pattern = "#\[(".$code['tag'].")\](.*)\[/\\1\]#isuSU"; #format: link
$text = preg_replace_callback($pattern, function($match) use ($code, $func) { return $this->$func($code['html'],$match[2]); }, $text);
$pattern = "#\[(".$code['tag'].")=(.*)\](.*)\[/\\1\]#isuSU"; #format text
$text = preg_replace_callback($pattern, function($match) use ($code, $func) { return $this->$func($code['html'],$match[2],$match[3]); }, $text);
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX | |
|
|
|
|
|
|
|
|
|
|
16.07.2016 - 09:14 Uhr |
|
|
|
Sehr gut, nun gehen die Links auch. Auf der Testseite geht auch die Seiteninfo, auf der Hauptseite aber nicht. Ich denke, es liegt daran, das die Testseite "MySQL-Version 5.5.49-0" und auf der Hauptseite "MySQL-Version: 5.1.73" benutzt wird. Werde ich heute abend mal neu machen.
Edit: Ok, wenn ich ein Video hinzufügen will und es dann Freischalte, geht das nicht. Hmm, ich denke, da gibt es mit PHP 7 einfach zu viele kleine Fehler um es auf der Hauptseite laufen zu lassen
|
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von DHH - 16.07.2016 - 09:23 Uhr |
|
|
|
|
|
|
|
|
|
|
16.07.2016 - 14:33 Uhr |
|
|
|
Grundsätzlich scheinen die Änderungen auf Seite 1 aber zu reichen. Hatte aber allerdings nur oberflächlich PHP 7 mit PHPKIT probiert. Die PHP-Doku hatte ich zum damaligen Zeitpunkt auch eher überflogen.
Die MySQL-Doku hatte ich jetzt nicht angeguckt - hab da auch irgendwie keine Lust. Mir kommts aber auch meistens so vor das eh keine Funktionen entfernt, höchstens erweitert werden. Aber wie gesagt - nicht wirklich Lust die Doku oder die Changelogs durch zu lesen ^^""
Was die Videos von Dustie angeht:
Du könntest ihn ja mal fragen. Ich müsste eh erstmal gucken wie wo was ist. Und wann ich dazu komme oder mal Lust zu habe .. ^^"" Naja, zumindest heute nicht mehr.
|
|
|
|
|
|
|
|
|
|
16.07.2016 - 15:39 Uhr |
|
|
|
Kann ich verstehen das dir die Lust dazu fehlt hehe, ein versuch war es aber wert, daher großen dank wieder für deine Mühe.
|
|
|
|
|
|
|
|
|
|
02.11.2016 - 17:12 Uhr |
|
|
|
Danke Kirika für deine Vorarbeit bezüglich der PHP 7 Umstellung. Mein Hoster kam nämlich vor kurzem auf die Idee uns zu informieren, das in ein paar Monaten die Server aktualisiert werden und somit wäre das PHPKIT nicht mehr lauffähig gewesen. Ich habe einen großen Teil deiner Änderungen übernommen und selber noch einige Teile gefunden, die nicht mehr, oder nur noch halb funktionieren würden.
Hier ist das PHPKIT Upgrade KIT als ASCE Version und natürlich mit Anleitung:
*Link entfernt*/include.php?path=download&contentid=654
Es kann natürlich sein, das im Laufe der Zeit noch weitere Bereiche gefunden werden, die bis jetzt noch keinem aufgefallen sind. Aber eines kann ich sagen. PHP7 ist performant. Doppelt so schnell wie die 5.4 :O
|
|
|
|
|
|
|
|
|
|
03.11.2016 - 07:12 Uhr |
|
|
|
Habe ich schon gesehen, das du dich dran gesetzt hast, finde ich sehr gut, Sobald die Mobile Version abgeschlossen ist, glaube fehlt nur noch die Movie Suche, dann werde ich mich mal ransetzen und auf PHP 7 umsteigen.
|
|
|
|
|
|
|
|
|
|
27.09.2018 - 22:15 Uhr |
|
|
|
Hallo,
Bei uns wird gerade auf PHP7.2 umgestellt
Habe diese Änderungen schon umgesetzt, auch die SQL.php geändert.
News und Forum werden jetzt wieder angezeigt
Nur habe ich da vor Urzeiten auch schon andere Modifizierungen eingebaut, und da klappt so einiges nicht
Im Forum
Quelle
Ebay
darf ich dir oder einem anderen mal meine bbcode.php senden ?
Liebe Grüße
Harald
|
|
|
|
|
|
|
|
|
|
09.10.2018 - 03:25 Uhr |
|
|
|
Einfach die Inhalte der Datei ( pkinc/class/bbcode.php ) hier posten* oder anhängen.
* Wenn posten, dann über den BB-Code
php ( ohne Leerzeichen innerhalb der beiden [] )
| PHP-Quelltext [php ]Hier der Inhalt der Datei[/php ] | |
oder code
| PHP-Quelltext [code]Hier der Inhalt der Datei[/code] | |
Mit etwas Glück ist die Anpassung in Nu geschaft ;o
|
|
|
|
|
|
|
|
|
|
09.10.2018 - 20:28 Uhr |
|
|
|
Danke dir, darfst dir aber Zeit lassen, ab morgen bin ich für 2 Wochen in der Sonne
Habe deine Änderungen eingebaut, und in den anderen Stellen auf #isuSU geändert, das wenigstens der Inhalt + Bilder angezeigt wird.
Wenn ich aber jetzt etwas im Forum poste, kommt eine weiße Seite nach dem absenden. und der Link im Ticker läuft dann zur Forumskategorie, und nicht zum Posting (das Posting kann ich also nicht aufrufen) hoffe du kannst mir helfen
Fehlermeldungen sind keine vorhanden
Schon mal Danke
Harald
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 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 | | Quellcode <?php
# PHPKIT WCMS | Web Content Management System
#
#
# YOU ARE NOT AUTHORISED TO CREATE ILLEGAL COPIES OF THIS
# FILE AND/OR TO REMOVE THIS INFORMATION
#
# SIE SIND NICHT BERECHTIGT, UNRECHTMÄSSIGE KOPIEN DIESER
# DATEI ZU ERSTELLEN UND/ODER DIESE INFORMATIONEN ZU ENTFERNEN
#
# This file / the PHPKIT software is no freeware! For further
# information please visit our website or contact us via email:
#
# Diese Datei / die PHPKIT Software ist keine Freeware! Für weitere
# Informationen besuchen Sie bitte unsere Website oder kontaktieren uns per E-Mail:
#
# email : info@phpkit.com
# website : http://www.phpkit.com
# licence : http://www.phpkit.com/licence
# copyright : Copyright (c) 2002-2009 mxbyte gbr | http://www.mxbyte.com
class pkBbcode
{
protected $text = '';
var $urldetect=1;
var $urlcut=1;
var $urlmaxwidth=60;
var $urlwidth1=50;
var $urlwidth2=-10;
var $censoruse=1;
var $imageresize=0;
var $textmaxlength=0;
protected $parse_bbcode = 1;
protected $parse_smilies = 1;
protected $parse_html = 0;
protected $parse_images = 1;
protected $smilies_search = array();
protected $smilies_replace = array();
protected $censorreplace = '*';
protected $censor_badword_hash = array();
var $bbhash='';
var $smiliehash='';
protected $urldetect_search = array(
# '#(? ?<!http://|https://|ftp://|ftps://)(www\.([^\s]*)))#iuS', #not working cause every char is allowed in urls
// BBCode '#(? ?<!img]|mgl]|mgr]|url]|lightbox]|url=|[url|ef="|rc="|on="])((ht|f)tp(s?)://([^\s]*)))#iuS', #clean except links as linktext
// BBCode [url] Fix by PimpYourKiT.de & Lightbox by PimpYourKiT.de
);
protected $urldetect_replace = array(
# '\\1', #not working cause every char is allowed in urls
'[url]\\1" class="hidelink" target="_blank"> Fix by PimpYourKiT.de & Lightbox by PimpYourKiT.de
'#(? ?<!img]|mgl]|mgr]|url]|lightbox]|url=|[url|ef="|rc="|on="])((ht|f)tp(s?)://([^\s]*)))#iuS', #clean except links as linktext
// BBCode [url] Fix by PimpYourKiT.de & Lightbox by PimpYourKiT.de
);
protected $urldetect_replace = array(
# '\\1', #not working cause every char is allowed in urls
'[url]\\1',
);
#@Method: __construct
#@Access: public
#@Param: void
#@Return: void
#@Desc: Constructor. Predefines smilies, bbcodes, and censor words.
public function __construct()
{
$this->bbhash = pkCfgData('bbcode');
#smilies
$obj = new smilies;
$array = $obj->getSmilieCache();
$array = is_array($array) ? $array : array();
foreach($array as $smilie)
{
$this->smilies_search[] = pkEntities($smilie['smilie_code']);
$this->smilies_replace[] = '<img src="'.$smilie['smilie_path'].'" alt="'.$smilie['smilie_title'].'" />';
}
#censorlist
$badwords = pkGetConfig('censor_badword');
$badwords = is_string($badwords) ? $badwords : '';
$badwords = explode("\n", $badwords);
$this->censor_badword_hash = $badwords;
}
#@END Method: __construct
#@Method: parse
#@Access: public
#@Param: string text
#@Param: bool html
#@Param: bool bb
#@Param: bool smilies
#@Param: bool images
#@Param: bool censor
#@Param: bool imageresize
#@Param: bool textmaxlength
#@Return: string
#@Desc: Primary method to parses texts.
public function parse($text='',$html=0,$bb=0,$smilies=0,$images=0,$censor=0,$imageresize=1,$textmaxlength=0)
{
if(empty($text))
{
return '';
}
$this->text = ' '.$text.' '; #s simple solution for smiles and other tags at the beginning to be parsed when containing a leading blank-space
$this->imageresize = $imageresize;
$this->textmaxlength = $textmaxlength;
$this->urlmaxwidth = $textmaxlength;
$this->urlmaxwidth ? NULL : $this->urlcut=0;
$this->parse_bbcode = $bb ? 1 : 0;
$this->parse_smilies = $smilies ? 1 : 0;
$this->parse_images = $images ? 1 : 0;
$this->parse_html = $html ? 1 : 0;
#should be removed in the future, sessions ID are not visible anymore
$this->text = pkRemoveSessionId($this->text);
#censor
if($censor)
{
$this->textcensor();
}
#urldetect - not when html is active
if($this->urldetect && !$this->parse_html)
{
$this->urldetect();
}
$this->text = $this->parse_html ? $this->prepare_html($this->text) : pkEntities($this->text);
if(!$this->parse_images)
{
$this->remove_images();
}
if($this->parse_bbcode)
{
$this->parse_bbcode();
}
if($this->parse_smilies)
{
$this->parse_smilies();
}
$this->text = nl2br($this->text);
#html allowed
if($this->parse_html)
{
$this->text = str_replace('"','"',$this->text);
}
else
{
$this->text = preg_replace("/(vb|java)script:/i","\\1 script:",$this->text);
}
if($this->textmaxlength)
{
$this->text = pk::txtwrap($this->text,$this->textmaxlength);
}
#remove not need whitespaces
$this->text = trim($this->text);
return $this->text;
}
#@END Method: parse
#@Method: prepare_html
#@Access: protected
#@Param: string text
#@Return: string
#@Desc:
function prepare_html($text='') {
$tags_open = array('table','tr','tbody'); // Öffnende Tags eintragen
$tags_closed = array('table','tr','td','th','tbody'); // Schliessende Tags eintragen
// Anfänge
for($i=0;$i<count($tags_open);$i++) {
if(isset($open) AND $open != "") $open .= "|";
$open .= $tags_open[$i];
}
eval("\$text=preg_replace(\"#<(".$open."){1,}(.*)>([\\r|\\n])[\\s]{1,}#iUs\", \"<\\\\1\\\\2>\",\$text);");
// Abschlüsse
for($i=0;$i<count($tags_closed);$i++) {
if(isset($closed) AND $closed != "") $closed .= "|";
$closed .= $tags_closed[$i];
}
eval("\$text=preg_replace(\"#</(".$closed."){1,}>([\\r|\\n])[\\s]{1,}#iUs\",\"</\\\\1>\",\$text);");
return str_replace('"',""",$text);
}
#@END Method: prepare_html
#@Method: urldetect
#@Access: protected
#@Param: void
#@Return: void
#@Desc:
protected function urldetect()
{
$this->text = preg_replace($this->urldetect_search,$this->urldetect_replace,$this->text);
}
#@END Method: urldetect
#@Method: parse_bbcode
#@Access: protected
#@Param: void
#@Return: void
#@Desc:
protected function parse_bbcode()
{
$text = &$this->text;#reference - for a smarter use
#search & replace standard bbcodes
foreach($this->bbhash as $code)
{
switch($code['type'])
{
case 'single' :
$text = preg_replace("#\[".$code['tag']."\]#isuSU",$code['html'],$text);
break; #END case single
case 'double' :
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
$pattern = "#\[(".$code['tag'].")=(.*)\](.*)\[/\\1\]#isuSU";
$text = preg_replace_callback($pattern, function($match) use ($code) { return $this->replace_bbcode($code['html'],$match[3],$match[2]); }, $text);
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
break; #END case double
// HTML BBCode by PimpYourKiT.de
case 'htmlcode' :
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
#$text = preg_replace("#\[(".$code['tag'].")=(.*)\](.*)\[/\\1\]#eisuSU","\$this->htmlcode('\\2','\\3')",$text);
$pattern = "#\[(".$code['tag'].")=(.*)\](.*)\[/\\1\]#isuSU";
$text = preg_replace_callback($pattern, function($match) { return $this->htmlcode($match[2], $match[3]); }, $text);
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
break;
// HTML BBCode by PimpYourKiT.de
// BBCode Quelle by PimpYourKiT.de
case 'quelle' :
$pattern = "#\[(".$code['tag'].")]([^\"\?\&]*\.(gif|jpg|jpeg|bmp|png))([\s]?)\[\/\\1\]#iU";
$text = preg_replace_callback($pattern, function($match) use ($code) { return $this->quelle($code['html'],$match[2]); }, $text);
$pattern = "#\[(".$code['tag'].")=(.*)\](.*)\[/\\1\]#isuSU";
$text = preg_replace_callback($pattern, function($match) { return $this->quelle($match[2], $match[3]); }, $text);
break;
// BBCode Quelle by PimpYourKiT.de
// BBCode eBay by PimpYourKiT.de
case 'ebay' :
$text = preg_replace_callback($pattern, function($match) use ($code, $func) { return $this->$func($code['ebay'],$match[2]); }, $text);
break;
// BBCode eBay by PimpYourKiT.de
case 'img' :
if($this->parse_images)
{
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
$pattern = "#\[(".$code['tag'].")]([^\"\?\&]*\.(gif|jpg|jpeg|bmp|png))([\s]?)\[\/\\1\]#iU";
$text = preg_replace_callback($pattern, function($match) use ($code) { return $this->replace_image($code['html'],$match[2]); }, $text);
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
}
break; #END case img
// BBCode eBay by PimpYourKiT.de
case 'ebay' :
require_once(pkDIRCLASS.'/bbcode/ebay'.pkEXT);
$ebay = new BBCodeEbay;
$text = $ebay->PYKEbayText($code['tag'],$text);
break; #END case ebay
// BBCode eBay by PimpYourKiT.de
case 'url' :
$func = 'replace_url';
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
$pattern = "#\[(".$code['tag'].")\](.*)\[/\\1\]#isuSU"; #format: link
$text = preg_replace_callback($pattern, function($match) use ($code, $func) { return $this->$func($code['html'],$match[2]); }, $text);
$pattern = "#\[(".$code['tag'].")=(.*)\](.*)\[/\\1\]#isuSU"; #format text
$text = preg_replace_callback($pattern, function($match) use ($code, $func) { return $this->$func($code['html'],$match[2],$match[3]); }, $text);
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
break; #END case url
case 'list' :
default :
$func = 'replace_bbcode';
$func = $code['type']=='list' ? 'replace_list' : $func;
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
$pattern = "#\[(".$code['tag'].")\](.*)\[/\\1\]#isuSU";
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
while(preg_match($pattern,$text))
{
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
$text = preg_replace_callback($pattern, function($match) use ($code, $func) { return $this->$func($code['html'],$match[2]); }, $text);
# PHP 5.5.0 - Suchmuster-Modifikatoren-FIX
}
break; #END default
}#END switch
}#END foreach bbhash
}
#@END Method: parse_bbcode
#@Method: parse_smilies
#@Access: protected
#@Param: void
#@Return: void
#@Desc:
protected function parse_smilies()
{
$this->text = str_replace($this->smilies_search,$this->smilies_replace,$this->text);
}
#@END Method: parse_smilies
// BBCode Quelle by PimpYourKiT.de
// HTML BBCode by PimpYourKiT.de
#@Method: htmlcode
#@Access: protected
#@Param: int
#@Param: string text
#@Return: string
#@Desc: allows html code
protected function htmlcode($options,$text = '')
{
define('SECURITYHTML',93854);
$this->text = str_replace(array("\r\n","\r","\n","\t"),'',$text);
if($options == SECURITYHTML)
return html_entity_decode($this->text);
return $this->text;
}
#@END Method: htmlcode
// HTML BBCode by PimpYourKiT.de
// BBCode Quelle by PimpYourKiT.de
#@Method: quelle
#@Access: protected
#@Param: string options
#@Param: string text
#@Return: string
#@Desc: shows source divs
protected function quelle($options = '',$text = '')
{
$text = trim($text);
if($options && $text)
$quelle ='<a href="'.strtolower($options).'">'.$text.'</a>';
elseif($options)
$quelle ='<a href="'.strtolower($options).'">'.$options.'</a>';
else
$quelle = $text;
return '<div class="info"><b>Quelle:</b> '.$quelle.'</div>';
}
#@END Method: quelle
// BBCode eBay by PimpYourKiT.de
#@Method: ebay
#@Access: protected
#@Param: string text
#@Return: string
#@Desc: shows ebay articles
protected function ebay($text = '')
{
/* Grössenangaben */
define('EBAYWIDTH',550);
define('EBAYHEIGHT',90);
/* Farbangaben */
define('EBAYBG','FFFFFF');
define('EBAYBC','CFCFCF');
define('EBAYTC','555555');
define('EBAYFC','777777');
$this->frameheight = EBAYHEIGHT + 30;
$this->framewidth = EBAYWIDTH - 50;
return '<table class="data-table"><tr class="head"><td><img src="fx/default/bbcode/ebay/ebay.png" alt="" title="" /> <span style="font-weight: bold; font-size: 14px;"> - Auktionen</span></td></tr><tr class="even"><td>
<iframe src="http://www.salessurvey.de/banner.php?itemID='.$text.'&w='.EBAYWIDTH.'&h='.EBAYHEIGHT.'&bg='.EBAYBG.'&bc='.EBAYBC.'&tc='.EBAYTC.'&fc='.EBAYFC.'&lang=DE" style="width:'.$this->framewidth.'px; height:'.$this->frameheight.'px" frameborder="0" scrolling="auto"></iframe></td></tr></table>';
}
#@END Method: ebay
// BBCode eBay by PimpYourKiT.de
#@Method: replace_list
#@Access: protected
#@Param: string html
#@Param: string text
#@Param: string option
#@Return: string
#@Desc:
protected function replace_bbcode($html,$text,$option='')
{
$option = trim($option);
$option = empty($option) ? $text : $option;
$html = str_replace("{text}",$text,$html);
$html = str_replace("{option}",$option,$html);
return $html;
}
#@END Method: replace_bbcode
#@Method: replace_list
#@Access: protected
#@Param: string html
#@Param: string text
#@Return: string
#@Desc:
protected function replace_list($html,$text)
{
#need trim here to avoid empty cols between list-elements
#text should contains some li/* elements
$text = trim($text);
#empty list-tags (ul,ol,dl) arnt allowed - so return an empty string in this case
if(empty($text))
{
return '';
}
#replace correctly with <li></li> without linebreaks
$pattern = "#\[(li)\](.*)\[/\\1\]#isuSU";
$text = preg_replace($pattern,'<li>\\2</li>',$text);
#do we have simple sinlge tags?
if(strstr($text,'<li>'))
{
#split by the simple single tag <li>
$matches = explode('<li>',$text);
foreach($matches as $i=>$str)
{
$str = trim($str);#empty lines will be removed
if(empty($str))
{
unset($matches[$i]);
continue;
}
$matches[$i] = '<li>'.$str.'</li>';
}
$text = implode('',$matches);
}#END simple single tags
#created the whole list and clean it up
$text = str_replace("{text}",$text,$html);
$text = preg_replace("#(\/li|ul|ol type=\"a\"|ol type=\"1\")>(.*)*<(li|\/ol|\/ul){1}>#sSU",'\\1><\\3>',$text);#removes everything between list related tags
$text = $text==str_replace("{text}",'',$html) ? '' : $text; # if the list is now empty nothing will be displayed, otherwise it wouldnt not be valid XHTML
return $text;
}
#@END Method: replace_list
#@Method: replace_url
#@Access: protected
#@Param: string html
#@Param: string url
#@Param: [string text]
function replace_url($html,$url,$text='')
{
$url = trim($url);
$text = empty($text) ? $url : $text;
$text = trim($text);
if($this->urlcut && strlen($text)>$this->urlmaxwidth && !preg_match("/[><\[\]]/",$text))
{
$text = substr($text,0,$this->urlwidth1)."...".substr($text,$this->urlwidth2);
}
#prevent double-links when imageresize is on
if($this->imageresize && preg_match("/\<a (.*)<\/a>/i",$text))
{
return str_replace("\\\"","\"",$text);
}
$str = str_replace("{text}",$text,$html);
$str = str_replace("{option}",$url,$str);
$str = str_replace("\\\"","\"",$str);
return $str;
}
#@END Method: replace_url
#@Method: replace_ images
#@Access: protected
#@Param: string html
#@Param: string link
#@Return: string
#@Desc:
protected function replace_image($html,$link)
{
if($this->imageresize)
{
$html = '<a href="'.$link.'" target="_blank">'.$html.'</a>';
$link = pkLinkFx('rsimg','src='.base64_encode($link));
}
$str = str_replace("{image}",$link,$html);
return $str;
}
#@END Method: replace_image
#@Method: remove_images
#@Access: protected
#@Param: void
#@Return: void
#@Desc:
protected function remove_images()
{
$pattern = "#\[(/?)(img|imgr|imgl)\]#i";
$this->text = preg_replace($pattern,'[\\1url]',$this->text);
}
#@END Method: remove_images
#@Method: textcensor
#@Access: protected
#@Param: void
#@Return: void
#@Desc:
protected function textcensor()
{
if(empty($this->censor_badword_hash) || $this->censoruse!=1)
{
return;
}
$replacer = $this->censorreplace;
$censorlist = $this->censor_badword_hash;
foreach($censorlist as $badword)
{
$badword = trim($badword);
if(empty($badword))
{
continue;
}
#badword length
$len = strlen($badword);
$replace = '';
if(preg_match("#\{(.*)\}#isU",$badword))#exact match
{
$len = $len-2;
$replace = str_repeat($replacer,$len);
$this->text = preg_replace($badword," ".$replace." ",$this->text);
}
else
{
$replace = str_repeat($replacer,$len);
$this->text = eregi_replace($badword,$replace,$this->text);
}
}#END foreach
}
#@END Method: textcensor
}
#@END Method: pkBbcode
?>
| | |
|
Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von Jan-Lukas - 09.10.2018 - 20:42 Uhr |
|
|
|
|
|
|
|
|
|
|
10.10.2018 - 03:49 Uhr |
|
|
|
Nabend
Ich weiss gar nicht so recht wo ich anfangen soll .. ^^""
Einerseits fehlen ein paar Sachen aus der Originaldatei, dann wurde ein Code-Block getauscht, bei einen Code-Block wird 2x abgefragt, und an einer andere Stellen woanders ist mir der "Sinn" nicht ganz klar .. Nen bisschen komisch halt ;o Ich hab das ganze mal unten aufgelistet.
Unabhängig davon scheint aber alles okay zu sein. Unter umständen müsste man alle Erweiterungen einmal ausblenden / rausschneiden und dann Stück für Stück wieder einbinden und prüfen ob ein Fehler / Fehlverhalten vorliegt.
--
Zitat Original geschrieben von Jan-Lukas
Wenn ich aber jetzt etwas im Forum poste, kommt eine weiße Seite nach dem absenden. |
Das könnte aber auch andere Gründe haben.
Um da statt einer weißen Seite zu sehen kannste ja folgendes machen:
- pkinc/main.php
- Öffne o.g. Datei und suche das:
| PHP-Quelltext define( 'pkDEVMODE', false ); | |
Und mache daraus das:
| PHP-Quelltext define( 'pkDEVMODE', true ); | |
Dann erscheinen ( für alle ) dann alle Fehlermeldungen.
Einmal mal einen Test-Post im Forum machen und dann gucken was für Meldungen beim senden kommen.
Zitat Original geschrieben von Jan-Lukas
und der Link im Ticker läuft dann zur Forumskategorie, und nicht zum Posting (das Posting kann ich also nicht aufrufen) |
Ist der Link denn ansich korrekt zum Posting? Also sieht der Link in etwa so aus:
| Quellcode ?path=forumsthread&threadid=***&entries=0#post***
?path=forumsthread&threadid=***&postid=last | |
Wenn ja, müsste ja eigentlich eine Fehlermeldung ala "Thema nicht verfügbar" mit einer Weiterleitung zur Forenübersicht zu sehen sein
--
Hier mal die Auflistung alle o.g. Punkte:
- Fehlende Sachen aus der Originaldatei
Zur Info
Das sind jetzt nur Stellen die abweichend zur Originaldatei sind. Es kann gut sein, das du ( oder wer auch immer ) das genau so gewollt hast. Auch ist mir aufgefallen das es im Grunde nur den "Zensur"-Part betrifft, der nicht ganz zuende Gedacht von PHPKIT-Erfinder zu seien scheint.
Hier klicken zum aufklappen- Original
| PHP-Quelltext class pkBbcode
{
/**
*
* @var NULL|array
*/
static protected $_censor = NULL;
protected $text = ''; | |
Bei dir
| PHP-Quelltext class pkBbcode
{
protected $text = ''; | |
Hier fehlt der static protected $_censor = NULL; (+Kommentar) Part.
- Original
| PHP-Quelltext public function __construct()
{
$this->_initCensor();
$this->bbhash = pkCfgData('bbcode');
#smilies | |
Bei dir
| PHP-Quelltext public function __construct()
{
$this->bbhash = pkCfgData('bbcode');
#smilies | |
Hier fehlt der $this->_initCensor(); Part.
- Original
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 | | PHP-Quelltext $this->censor_badword_hash = $badwords;
}
/**
*
* @param void
* @return array
*/
public function getCensor()
{
return self::$_censor;
}
#@Method: parse
#@Access: public
#@Param: string text
#@Param: bool html
#@Param: bool bb
#@Param: bool smilies
#@Param: bool images
#@Param: bool censor
#@Param: bool imageresize
#@Param: bool textmaxlength
#@Return: string
#@Desc: Primary method to parses texts. | |
Bei dir
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | | PHP-Quelltext $this->censor_badword_hash = $badwords;
}
#@END Method: __construct
#@Method: parse
#@Access: public
#@Param: string text
#@Param: bool html
#@Param: bool bb
#@Param: bool smilies
#@Param: bool images
#@Param: bool censor
#@Param: bool imageresize
#@Param: bool textmaxlength
#@Return: string
#@Desc: Primary method to parses texts. | |
Hier fehlt die ganze Funktion public function getCensor() samt Inhalt.
- Original
| PHP-Quelltext if( preg_match( "#\{(.*)\}#isU", $badword ) )
{
$len = $len - 2;
$replace = str_repeat( $replacer, $len );
$this->text = str_replace( $badword, " " . $replace . " ", $this->text );
}
else
{
$replace = str_repeat( $replacer, $len );
$this->text = str_replace( $badword, $replace, $this->text );
} | |
Bei dir
| PHP-Quelltext if(preg_match("#\{(.*)\}#isU",$badword))#exact match
{
$len = $len-2;
$replace = str_repeat($replacer,$len);
$this->text = preg_replace($badword," ".$replace." ",$this->text);
}
else
{
$replace = str_repeat($replacer,$len);
$this->text = eregi_replace($badword,$replace,$this->text);
} | |
Bei den einen $this->text = str_replace( $badword, ist statt dem str_replace ein preg_replace. Und bei den zweiten $this->text = str_replace( $badword, ist ein eregi_replace.
Sofern das bewusst so gemacht wurde - okay. Soweit ich aber weis ( gut, ist relativ, ne ^^"" ) ist preg_replace zwar "mächtiger", aber auch langsamer. Und bei eregi_replace bin ich mir jetzt nicht ganz sicher, aber irgendwas war mit den ganzen eregi_-Funktionen nicht ganz korrekt gewesen. Ja, ich geb es zu: Bin zu Faul jetzt danach zu suchen ^^""
- Original
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | | PHP-Quelltext /**
*
* @param void
* @return object|self|PHPKIT_Frontend_Model_BBCode
*/
protected function _initCensor()
{
if( self::$_censor === NULL )
{
$badwords = pkGetConfig( 'censor_badword' );
$badwords = is_string( $badwords ) ? $badwords : '';
$badwords = explode( "\n", $badwords );
self::$_censor = $badwords;
}
return $this;
}
} | |
Bei dir
| PHP-Quelltext | |
Ja, richtig. Fehlt komplett ;o
- Code-Block getauscht
Hier klicken zum aufklappen- Original
| PHP-Quelltext protected function textcensor()
{
$replacer = $this->censorreplace;
$censorlist = $this->getCensor();
if( empty( $censorlist ) || $this->censoruse != 1 )
{
return;
} | |
Bei dir
| PHP-Quelltext protected function textcensor()
{
if(empty($this->censor_badword_hash) || $this->censoruse!=1)
{
return;
}
$replacer = $this->censorreplace;
$censorlist = $this->censor_badword_hash; | |
Hier sind die beiden Variablen $replacer und $censorlist hinter der ersten Abfrage gesetzt ( Original: davor ). Und bei $censorlist ist ein anderer Zuweisungswert.
Auch hier gilt:
Wenn so gewollt - kein Ding. Ist mir halt nur Aufgefallen ;o
- Code-Block wird 2x abgefragt
Hier klicken zum aufklappenJo, der EBay-Part wird 2x abgefragt.
Einmal hier:
| PHP-Quelltext // BBCode eBay by PimpYourKiT.de
case 'ebay' :
$text = preg_replace_callback($pattern, function($match) use ($code, $func) { return $this->$func($code['ebay'],$match[2]); }, $text);
break;
// BBCode eBay by PimpYourKiT.de | |
Und ein paar Zeilen tiefer so:
| PHP-Quelltext // BBCode eBay by PimpYourKiT.de
case 'ebay' :
require_once(pkDIRCLASS.'/bbcode/ebay'.pkEXT);
$ebay = new BBCodeEbay;
$text = $ebay->PYKEbayText($code['tag'],$text);
break; #END case ebay
// BBCode eBay by PimpYourKiT.de | |
Ich sags mal so:
Ich seh darin keinen Sinn für einen BB-Code gleich zwei seperate Bereiche zu machen. Zumal ich hier vermuten würde das "Wer zuletzt kommt, wird am Ende angezeigt" gilt. Demnach würde der erste Aufruf ( also der erste Code-Block ) zwar ausgeführt, aber am Ende ignoriert, da es nochmal Abgerufen wird ( 2. Code-Block ) und somit überschrieben.
- Woanders ist mir der "Sinn" nicht ganz klar
Hier klicken zum aufklappenEs geht um diesen Code-Block:
| PHP-Quelltext // BBCode Quelle by PimpYourKiT.de
case 'quelle' :
$pattern = "#\[(".$code['tag'].")]([^\"\?\&]*\.(gif|jpg|jpeg|bmp|png))([\s]?)\[\/\\1\]#iU";
$text = preg_replace_callback($pattern, function($match) use ($code) { return $this->quelle($code['html'],$match[2]); }, $text);
$pattern = "#\[(".$code['tag'].")=(.*)\](.*)\[/\\1\]#isuSU";
$text = preg_replace_callback($pattern, function($match) { return $this->quelle($match[2], $match[3]); }, $text);
break;
// BBCode Quelle by PimpYourKiT.de | |
Zur Info:
Die Funktion quelle() von PimpYourKit.de nimmt 2 Parameter entgegen.
#1 "Optionen"
#2 "Text"
Soweit so gut.
Problem ist, oder was ich halt nicht verstehe:
Was macht das $code['html'] im ersten $text = preg_replace_callback(... .. ? Was steht als Wert drin?
Denn laut Funktion quelle() gilt folgendes:
Ist #1 "Optionen" und #2 "Text" vorhanden, soll #1 "Optionen" ( hier wäre der Wert von $code['html'] dann drin ) im Link als Ziel ( href="" ) stehen.
| PHP-Quelltext if($options && $text)
$quelle ='<a href="'.strtolower($options).'">'.$text.'</a>'; | |
Normalerweise ist $code['html'] der spätere HTML-Code in der Ausgabe.
|
|
|
|
|
|
|
|
|
|
21.10.2018 - 19:51 Uhr |
|
|
|
So, aus dem Urlaub zurück
Hmm, die Datei ist 16 Jahre alt, wurde immer mal etwas geändert, hat auch immer ohne Probleme funktioniert.
define( 'pkDEVMODE', true );
alles versucht, null Fehlermeldungen
Ich wollte sowiso am liebsten mal alles neu aufsetzen, finde aber keine 1.6.6 im Web
wenn Du eine hättest ?
liebe Grüße
Harald
|
|
|
|
|
|
|
|
Ähnliche Themen |
|
Es wurden keine ähnlichen Themen gefunden.
|
|
|
|
|
|
|
|
|
|