Fehler beim Parsen - Advanced Online Panel
|
|
Herr_Wunderlich |
Geschrieben am 13.07.2017 um 12:30
|
![]() Neuling ![]() Beiträge: 8 Registriert am: 24.06.17 |
Hallo, ich bin ein Neuling in Sachen PHPFusion. Ich nutze die Version 7.1 und habe heute das "Advanced Online Panel" eingebaut. Und bekomme nun folgenden Fehler: Error! Undefined index: user_web Code if($data['user_web'] != "") $user_web = trimlink(str_replace("http://", "", $data['user_web']), 30); else $user_web = "<span Ich würde mich über Hilfe freuen. Viele Grüße und Danke. |
|
|
David |
Geschrieben am 13.07.2017 um 12:36
|
![]() Hall of Fame ![]() Beiträge: 164 Registriert am: 01.02.14 |
Die Fehlermeldung bedeutet, dass die Angabe user_web nicht vorhanden ist. 1.) Wurde das Benutzerfeld "Webseite" installiert? Falls Ja, bitte das Addon anhängen. ----------- Weiteres, mit 7.1 meinst du die PHP-Version oder die PHP-Fusion Version? Die aktuelle PHP-Fusion Version wäre 7.02.07 .. |
|
|
Herr_Wunderlich |
Geschrieben am 13.07.2017 um 12:39
|
![]() Neuling ![]() Beiträge: 8 Registriert am: 24.06.17 |
Ich habe kein Addon mit der Bezeichnung installiert. Sollte ich das machen? |
|
|
David |
Geschrieben am 13.07.2017 um 12:40
|
![]() Hall of Fame ![]() Beiträge: 164 Registriert am: 01.02.14 |
Wenn du unter "Administration -> Benutzer -> Benutzerfelder" das Benutzerfeld "Webseite (oder Homepage)" installierst, sollte die Fehlermeldung verschwinden.
|
|
|
Herr_Wunderlich |
Geschrieben am 13.07.2017 um 12:42
|
![]() Neuling ![]() Beiträge: 8 Registriert am: 24.06.17 |
Ich konnte das Benutzerfeld dort hinzufügen aber die Meldung ist noch da. jetzt alledings mit folgendem Fehler: Zitat: online_showbots = '".$_POST['showbots']."',
Bearbeitet von Herr_Wunderlich am 13.07.2017 um 12:47 |
|
|
David |
Geschrieben am 13.07.2017 um 12:44
|
![]() Hall of Fame ![]() Beiträge: 164 Registriert am: 01.02.14 |
Fehlerlog auch geleert? Weiteres bitte das Addon anhängen. |
|
|
Herr_Wunderlich |
Geschrieben am 13.07.2017 um 12:49
|
![]() Neuling ![]() Beiträge: 8 Registriert am: 24.06.17 |
Ich habe die Datei mal angehängt. Vielen Dank für deine Geduld.
Herr_Wunderlich hat folgende Datei angehängt:
|
|
|
David |
Geschrieben am 13.07.2017 um 12:56
|
![]() Hall of Fame ![]() Beiträge: 164 Registriert am: 01.02.14 |
Betreffend des Fehlers Zitat: online_showbots = '".$_POST['showbots']."' Öffne die Datei advanced_online_panel_admin.php und suche in Zeile 39 nach folgenden Code if(isset($_POST['update'])) { Direkt darunter füge ein Code $_POST['showbots'] = isset($_POST['showbots']) ? "1" : "0"; -------------------- Betreffend des Fehlers Zitat: Undefined index: user_web Öffne die Datei advanced_online_panel.php und suche in Zeile 107 nach folgenden Code if($data['user_web'] != "") $user_web = trimlink(str_replace("http://", "", $data['user_web']), 30); else $user_web = "<span class=\'small\'>keine Angabe</span>"; Ersetzte dies durch folgendes Code if (isset($data['user_web'])) { Bitte gerne :-) |
|
|
Herr_Wunderlich |
Geschrieben am 13.07.2017 um 13:06
|
![]() Neuling ![]() Beiträge: 8 Registriert am: 24.06.17 |
Nach Änderung der Daeteien ergibt sich nun folgender Fehler in der infusions/advanced_online_panel/advanced_online_panel.php Code echo "<span class=\"online_hotspot\" onmouseover=\"online_tooltip.show('".$avatar."<div align=\'right\' style=\'float: right; color: |
|
|
David |
Geschrieben am 13.07.2017 um 13:20
|
![]() Hall of Fame ![]() Beiträge: 164 Registriert am: 01.02.14 |
Sorry, dass war leider ein Flüchtigkeitsfehler meinerseits. Suche nach folgenden Code (meine erste Ersetzung) Code if (isset($data['user_web'])) { und ersetzte diesen durch folgendes Code $user_web = "<span class=\'small\'>keine Angabe</span>"; |
|
|
Krelli |
Geschrieben am 13.07.2017 um 13:21
|
![]() Administrator ![]() Inoffizielles DE Updatepack ![]() Beiträge: 584 Registriert am: 01.07.14 |
Zitat: David schrieb: Betreffend des Fehlers Zitat: Undefined index: user_web Öffne die Datei advanced_online_panel.php und suche in Zeile 107 nach folgenden Code if($data['user_web'] != "") $user_web = trimlink(str_replace("http://", "", $data['user_web']), 30); else $user_web = "<span class=\'small\'>keine Angabe</span>"; Ersetzte dies durch folgendes Code if (isset($data['user_web'])) { Diese Änderung sollte man in 1 Zeile zusammenfassen, um den Fehler wegen nicht gesetzter Variable $user_web zu vermeiden. Die Ersetzung sollte also besser so aussehen: Code if(IsSet($data['user_web']) && $data['user_web'] != "") $user_web = trimlink(str_replace("http://", "", $data['user_web']), 30); else $user_web = "<span class=\'small\'>keine Angabe</span>"; |
|
|
Herr_Wunderlich |
Geschrieben am 13.07.2017 um 13:29
|
![]() Neuling ![]() Beiträge: 8 Registriert am: 24.06.17 |
Vielen Dank für eure Hilfe. Jetzt scheint es Fehlerfrei zu sein ![]() |
|
|
David |
Geschrieben am 13.07.2017 um 13:30
|
![]() Hall of Fame ![]() Beiträge: 164 Registriert am: 01.02.14 |
Jetzt wo du es sagst Systemweb, da hast du recht. Wäre auch von Ladezeiten minimal schneller ![]() |
|
|
Krelli |
Geschrieben am 13.07.2017 um 13:32
|
![]() Administrator ![]() Inoffizielles DE Updatepack ![]() Beiträge: 584 Registriert am: 01.07.14 |
@David: Ja unsere Antworten haben sich überschnitten. Im Prinzip funzt ja beides einwandfrei. Deine Variante ist übersichtlicher nachzuvollziehen, meine kurz und knapp ![]() Es hätte also völlig genügt, dem Original-Code das IsSet($data['user_web']) && hinzuzufügen :-) |
|
|
TBR |
Geschrieben am 14.07.2017 um 20:49
|
![]() Mitglied ![]() Beiträge: 67 Registriert am: 19.06.17 |
Hallo zusammen ich hab das gleiche Problem mit dem Panel, daher wollte ich statt die Website , das Geschlecht anzeigen lassen. Ich habe user_web gegen user_gender getauscht und bin damit natürlich kläglich gescheitert ![]() In den andere Ordnern war für mich nicht zu erkennen was die Spalte anspricht und hätte geändert werden müssen. Was hab ich übersehen? Weiteres Problem, das Panel zeigt immer erst nach refresh der Seite dazu gekommene User als Online an, ist es umsetzbar dass alle 1-2 Minuten nur das Panel aktualisiert wird, bevor ich die ganze Seite so einstelle, dass die aktualisiert? |
|
|
David |
Geschrieben am 14.07.2017 um 23:04
|
![]() Hall of Fame ![]() Beiträge: 164 Registriert am: 01.02.14 |
Im Grunde genommen ist der Ansatz mit dem einfachen Austausch von user_web zu user_gender nicht so verkehrt. Ich denke jedoch dass du wohl bei der Ausgabe gescheitert bist? Falls Ja, könnte der Ausgabecode zum Beispiel so aussehen (basierend auf deinem Profilfeld des anderen Forenthemas). Code if (isset($data['user_gender'])) { Betreffend der Aktualisierung des Panels - Ja es ist möglich - Stichwort: AJAX. Allerdings, und das sag ich gleich, ist das für Laien schwer zu bewerkstelligen. |
|
|
TBR |
Geschrieben am 15.07.2017 um 05:30
|
![]() Mitglied ![]() Beiträge: 67 Registriert am: 19.06.17 |
Ah, ich sehe schon meinen Denkfehler bzw. was ich nicht geändert habe. Ich glaube, AJAX würde mir echt den Rest geben, dann bleibt das lieber so oder ich aktualisiere die komplette Seite. :D Vielen Dank für deine Geduld und das du dein Wissen so selbstlos mit uns teilst, David. Hab da schon ganz andere Erfahrungen in Foren gemacht. So, hier noch mal die komplette Änderung (in bold), falls jemand die Zeile auch ändern möchte. Code if (isset($data['user_gender'])) { |
|
|
adam824444 |
Geschrieben am 12.02.2022 um 12:55
|
![]() Neuling ![]() Beiträge: 9 Registriert am: 10.02.22 |
Ich weiß das der Thread sehr alt ist, aber ich habe mit der Funktion ein Problem und zwar zeigt es bei mir immer nur das Geschlecht Männlich, weiß jemand wie auch Weiblich ausgegeben wird? |
|
|
Krelli |
Geschrieben am 12.02.2022 um 17:34
|
![]() Administrator ![]() Inoffizielles DE Updatepack ![]() Beiträge: 584 Registriert am: 01.07.14 |
Das Benutzerfeld user_gender habe ich mal vor vielen Jahren auf die Schnelle erstellt. Ich weiß selbst nicht, warum ich damals die Geschlechter durchnummeriert hatte (1 war weiblich, 2 war männlich) statt einfach f oder m zu speichern. Vermutlich hast du ein Benutzerfeld eines schlaueren Entwicklers, das die Geschlechter in f und m oder w und m speichert. In dem Fall gibt es niemals eine gespeicherte 1 beim Geschlecht und somit wird in deinem Script immer männlich angezeigt. Versuche doch mal, statt der 1 ein f oder w zu verwenden, ob es dann klappt. Du änderst also Code if (isset($data['user_gender'])) { Code if (isset($data['user_gender'])) { Alternativ könntest du auch in der Benutzertabelle der Datenbank prüfen, welche Werte in der Spalte "user_gender" eingetragen sind. Dann weißt du genau, welcher Wert dort gesetzt sein muss. Inzwischen sollte man sicherheitshalber bei Geschlechterangaben auch "diverse" anbieten, sonst kommt noch jemand auf die Idee dich abzumahnen. Aber das ist wieder ein anderes Problem als dein aktuelles. |
|
|
adam824444 |
Geschrieben am 12.02.2022 um 17:47
|
![]() Neuling ![]() Beiträge: 9 Registriert am: 10.02.22 |
Jetzt konnte ich als Admin als Männlich dargestellt werden aber Personen die als Frau angemeldet sind werden nun ebenfalls als Männlich ausgelesen?! EDIT: In der Datenbank ist es auf 1 gestellt. Ganz gleich was ich mache, sobald ich den Wert ändere, ändert sich von allen Personen das Geschlecht in einem durcheinander. Es ist so als ob durch zufallsprinzip das Geschlecht sich von selbst auswählt..! EDIT2: Ich weiß nicht was passiert ist, aber als ich mich in die Datenbank eingeloggt habe hat der Wert 1 geschaltet, nun wird alles richtig dargestellt. Ich versteh das nicht, sind hier BÖSE Mächte am Werk? IoI Bearbeitet von adam824444 am 12.02.2022 um 17:58 |
|
Springe ins Forum: |