Seite 8 von 8

Verfasst: 29.03.2007 21:37
von phillip
mhh, viel weiter hat mich das nicht gebracht...

wenn ich nichts "ankreuze", kommt die fehlermeldung:

Code: Alles auswählen

Warning: implode() [function.implode]: Bad arguments. in /home/httpd/vhosts/.../httpdocs/nickpage_admin.php on line 188

Warning: implode() [function.implode]: Bad arguments. in /home/httpd/vhosts/.../httpdocs/nickpage_admin.php on line 192
Wenn ich verschiedene sachen ankreuze, sehe ich oben

Code: Alles auswählen

ArrayArray
und das nächste mal beim bearbeiten ist nur die allererste Option angekreuzt, sonst nichts....

Das selbe Problem habe ich bei den radio buttons. Es wird einfach nicht angezeigt, was das letzte Mal ausgewählt wurde...

Verfasst: 31.03.2007 11:32
von Pingu625
Hi

Dein Forum hat anscheinend Probleme mit den Parametern der Funktion implode()...

Was das genau sein kann ist schwer zu sagen.

Ich werde den Mod mal bei mir selbst testen, und schauen, ob es nur ein Einbaufehler ist, oder woran es liegt!

Pingu

Verfasst: 20.06.2007 14:47
von MrJack
also ich weiß zwar nicht, ob das noch einen interessiert, aber ich schreib trotzdem mal was ich geschafft habe ^^ (und das fast ohne php kenntnisse ;) )
mit den checkboxen hatte ich auch die selben probleme, aber ich weiß jetzt woran es liegt:

1. fehler: "Warning: implode() [function.implode]: Bad arguments."
#
#-----[ OPEN ]------------------------------------------
#
nickpage.php

#
#-----[ FIND ]------------------------------------------
#
if($row['user_id'] != "" AND ($userdata['username'] == $_GET['admin'] OR $userdata['user_level'] == ADMIN))
{

#
#-----[ AFTER, ADD ]------------------------------------------
#
$HTTP_POST_VARS['extrafield1'] = array();
so erreicht man, dass der fehler nicht mehr angezeigt wird.... aber so funktioniert dann leider das mit den checkboxen nicht mehr...
--> also scheint es an ner falschen position zu stehen oder sowas.
aber denke mal, dass man diese variable als array deklarieren muss.

jetzt muss nur noch einer mit php kenntnisse kommen und mir sagen, wo man das richtig macht ;)


####################################################################
2. Fehler: beim wiederholten bearbeiten waren die checkboxen nicht mehr auf check
#
#-----[ FIND ]------------------------------------------
#
$extrafield1_options = explode(', ', $row['extrafield1']);

#
#-----[ AFTER, ADD ]------------------------------------------
#
#die "13" bzw "12" ist da, weil ich soviele checkboxen habe
#

for($lol = 1; $lol < 13; $lol++)
{
$k_options[$lol-1] = $lang['extrafield1_option'.$lol];
}
$ko_options[] = " ";
for($lol = 0; $lol < 12; $lol++)
{
for($rofl = 0; $rofl < 12; $rofl++)
{
if($k_options[$lol] == $extrafield1_options[$rofl])
{
$ko_options[$lol] = $k_options[$lol];
}
}
}

#
#-----[ FIND ]------------------------------------------
#
'Webseite' => $row['user_website'],

#
#-----[ AFTER, ADD ]------------------------------------------
#
'EXTRAFIELD1_OPTION1' => ($ko_options[0] == $lang['extrafield1_option1']) ? "checked=\"checked\"" : "",
'EXTRAFIELD1_OPTION2' => ($ko_options[1] == $lang['extrafield1_option2']) ? "checked=\"checked\"" : "",

# [...]
#
#-----[ ENDE ]------------------------------------------
und das funktioniert sogar komplett^^ - kann aber sein, dass das nicht so effektiv ist.
bin aber halt wie gesagt eher ein designer als ein programmierer.

aber wäre jedenfalls nett, wenn einer das mit dem error da oben hinbekommt... ;)

Verfasst: 20.06.2007 19:59
von Pingu625
Hi,

also erstmal ein Lob an MrJack, denn die 2. Lösung ist gut so. :)

Und nun erkenne ich auch meinen Denkfehler hierbei. Mein Code hätte nur funktioniert, wenn die erste und darauffolgende Checkboxen aktiviert wurden.

Ich werde deine Funktion in ein kleines Update packen. ;)

Zum ersten Code muss ich jedoch fragen:
Wozu änderst du was an der nickpage.php?
Müsste das nicht in die nickpage_admin.php?

Außerdem müsste PHP doch normalerweise von selbst erkennen, dass es ein Array ist.

Dann erkläre bitte noch den Satz:
"aber so funktioniert dann leider das mit den checkboxen nicht mehr"

Pingu

Verfasst: 20.06.2007 21:39
von MrJack
Müsste das nicht in die nickpage_admin.php?
ups... ja klar ist es da ;)
Außerdem müsste PHP doch normalerweise von selbst erkennen, dass es ein Array ist.
naja ich habe nicht wirklich ahnung von php. habe aber mal gegoogled und da meinte irgendwo einer, dass der fehler mit dem implode() behoben wird, wenn man die variable validiert (oder so ähnlich) [das war aber nicht auf phpbb bezogen.
aber das habe ich mal ausprobiert und danach war der fehler auch nicht mehr da.
nun scheint aber das array immer als leer deklariert, was zur folge hat, dass keine checkbox mehr als "checked" makiert wird (also so interpretiere ich das. weiß aber nicht genau, ob es wirklich so ist).
ich hoffe du verstehst was ich meine. würde gerne den fehler auch noch irgendwie beheben, da das ja unschön aussieht, wenn da auf einmal ein error auftaucht :D

Verfasst: 21.06.2007 15:07
von Pingu625
Dann probiere erstmal folgendes aus:

Finde in deinem Code:

Code: Alles auswählen

$HTTP_POST_VARS['extrafield1'] = array();
Ersetze mit:

Code: Alles auswählen

$extrafield1_validate = array();
$extrafield1_validate = $HTTP_POST_VARS['extrafield1'];
$HTTP_POST_VARS['extrafield1'] = array();
$HTTP_POST_VARS['extrafield1'] = $extrafield1_validate;
Das ist zwar umständlich, aber eine Notlösung ist es ;)

Pingu

Verfasst: 21.06.2007 20:14
von MrJack
hmm ne geht leider immer noch nicht...

gibt es vielleicht eine möglichkeit, dass die fehlermeldung bei diesem vorgang ausgeschalten wird?

es funktioniert ja eigentlich... nur halt die fehler ausgabe nervt :(

Verfasst: 29.09.2008 17:47
von Chapterii
Hallo,
Ich würde den mod gerne installieren bzw. downloaden, aber der is iwie nicht mehr online! kann mir den jemand zur Verfügung stellen?