PHPBB: Neues Feld im Profil um Datum in die DB zu schreiben

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Candy
Mitglied
Beiträge: 314
Registriert: 09.11.2002 21:15

PHPBB: Neues Feld im Profil um Datum in die DB zu schreiben

Beitrag von Candy »

Hi,
ich würde gerne eine Auswahlliste ins Profil einfügen wo die User Tag/Monat/Jahr auswählen können das dann als timestamp in der DB gespeichert wird wobei im auswahlfeld Jahr immer automatisch das aktuelle Jahr + die nächsten 20 Jahre angezeigt werden sollten.

So in etwa mein ich das (Ist nur HTML): Beispiel

Da ich noch so gut wie keine ahnung von PHP habe wäre ich dankbar wenn mir da jemand weiterhelfen könnte? :)

Grüße Candy
Benutzeravatar
Mister_X
Ehemaliges Teammitglied
Beiträge: 7102
Registriert: 24.05.2001 02:00
Wohnort: Augsburg

Beitrag von Mister_X »

das aktuelle Jahr kriegst du mit der date Funktion raus: http://www.php.net/manual/de/function.date.php
und für die 20 Jahre danach kannst du dir ja mal die Doku hier anschauen: http://www.schattenbaum.net/php/while.php
Candy
Mitglied
Beiträge: 314
Registriert: 09.11.2002 21:15

Beitrag von Candy »

Jo soweit kann ich folgen nur wie bekomme ich das hin das, das ausgewählte in die DB als timestamp eingetragen wird?

Edit: ich habe das jetzt mal so probiert wie es auf schattenbaum.net steht mein script sieht jetzt so aus:

Code: Alles auswählen

<?php
$count = 1;
$time = date("Y");
$zahl = 20;

    while( $count < $zahl )
    {

    echo $time,", ";
    $count++;
    }
?>
Jetzt wird es zwar 20 mal ausgegeben aber eben immer nur 2003 nicht 2003, 2004, 2005 etc. :(

Grüße Candy
Seether
Mitglied
Beiträge: 1446
Registriert: 10.10.2002 23:42

Beitrag von Seether »

Was soll denn sonst ausgegeben werden?

Alles andere findest Du hier http://www.php.net/manual/de/function.date.php


z.B.
date ("m:Y")


S.
Benutzeravatar
esperitox
Mitglied
Beiträge: 803
Registriert: 17.04.2002 21:40
Wohnort: Line 758
Kontaktdaten:

Beitrag von esperitox »

@Seether sie will die nächsten 20 Jahreszahlen ab diesem Jahr fortlaufend ausgeben lassen so hab ichs jedenfalls verstanden :roll:

@Candy füge mal nach $count++; das ein: $time++; dann sollte es gehen :)

esperitox
Seether
Mitglied
Beiträge: 1446
Registriert: 10.10.2002 23:42

Beitrag von Seether »

esperitox hat geschrieben:@Seether sie will die nächsten 20 Jahreszahlen ab diesem Jahr fortlaufend ausgeben lassen so hab ichs jedenfalls verstanden :roll:

Opps falsch verstanden.

Dann würde ich es so machen


for ($i=2003;$i<=2023;$i++)
echo $i;

geht schneller :x


S.
Benutzeravatar
Mister_X
Ehemaliges Teammitglied
Beiträge: 7102
Registriert: 24.05.2001 02:00
Wohnort: Augsburg

Beitrag von Mister_X »

um aus deinen einzelnen Daten (Tag, Monat, Jahr) einen Timestamp zu generieren schaue dir diese Funktion an: http://www.php.net/manual/de/function.strtotime.php
Candy
Mitglied
Beiträge: 314
Registriert: 09.11.2002 21:15

Beitrag von Candy »

thx bleibt nur noch die frage wie ich das mit den Drop Down Menüs hinbekomme ? :o

Grüße Candy
Seether
Mitglied
Beiträge: 1446
Registriert: 10.10.2002 23:42

Beitrag von Seether »

Sieht so aus:

<select name="name" size="1">
<option>2003</option>
...
<option>2023</option>
</select>


S.
Candy
Mitglied
Beiträge: 314
Registriert: 09.11.2002 21:15

Beitrag von Candy »

Hi,
ich habe es jetzt mit hilfe von Chris (siehe: http://www.phpbb.de/viewtopic.php?p=126675#126675) hinbekommen das 3 Drop Down Menüs angezeigt werden wenn ich in diesen Drop Down Menüs etwas auswähle und absende wird es zwar in der DB gespeichert aber wenn ich zurückkehre zu den Profileinstellungen sind die Drop Down Menüs zurückgesetzt und nicht so wie es sein sollte das automatisch ausgewählt ist was ich vorher gespeichert habe :( Hier mal die Anleitung von Chris (etwas von mir abgeändert):

Code: Alles auswählen

[Finde] 
if ( !$error ) 
{ 
   if ( $avatar_sql == '' ) 

[Davor einfügen] 

$user_first_pc_from = $d_first_pc.$m_first_pc.$y_first_pc; 

[Finde] 
   $email = htmlspecialchars($email); 
[Füge danach ein] 
$d_first_pc = ( isset($HTTP_POST_VARS['d_first_pc']) ) ? intval ($HTTP_POST_VARS['d_first_pc']) : 0; 
$m_first_pc = ( isset($HTTP_POST_VARS['m_first_pc']) ) ? intval ($HTTP_POST_VARS['m_first_pc']) : 0; 
$y_first_pc = ( isset($HTTP_POST_VARS['y_first_pc']) ) ? intval ($HTTP_POST_VARS['y_first_pc']) : 0; 

[Finde] 
         $sql = "UPDATE " . USERS_TABLE . " 
            SET " . $username_sql . $passwd_sql . "... 
[Finde darin] 
, user_allow_sig=$allow_sig 
[Füge direkt davor ein] 
, user_first_pc_from=$user_first_pc_from 

[Finde] 
         $sql = "INSERT INTO " . USERS_TABLE . "   (user_id, u... 
[Finde darin] 
, user_allow_sig 
[Füge direkt davor ein] 
, user_first_pc_from 
[Finde darin] 
,'allow_sig' 
[Füge direkt davor ein] 
,'$user_first_pc_from' 

[Finde] 
   $interests = htmlspecialchars($userdata['user_interests']); 
[Füge danach ein] 
$user_first_pc_from = $userdata['user_first_pc_from']; 

[Finde] 
   display_avatar_gallery... 
[Finde darin] 
, $allow_sig 
[Füge direkt davor ein] 
, $user_first_pc_from 

[Finde] 
   $template->set_filenames(array( 
      'body' => 'profile_add_body.tpl') 
   ); 
[Füge danach ein] 
$s_d_first_pc = '<select name="d_first_pc" size="1" class="gensmall" size="1"> 
   <option value="0">-</option> 
   <option value="1">1</option> 
   <option value="2">2</option> 
   <option value="3">3</option> 
     </select>&nbsp;&nbsp;'; 
$s_d_first_pc = str_replace("value=\"".$user_first_pc_from."\">", "value=\"".$user_first_pc_from."\" SELECTED>" ,$s_d_first_pc); 

$s_m_first_pc = '<select name="m_first_pc" size="1" class="gensmall" size="1"> 
   <option value="0">-</option> 
   <option value="1">1</option> 
   <option value="2">2</option> 
   <option value="3">3</option> 
     </select>&nbsp;&nbsp;'; 
$s_m_first_pc = str_replace("value=\"".$user_first_pc_from."\">", "value=\"".$user_first_pc_from."\" SELECTED>" ,$s_m_first_pc); 

$s_y_first_pc = '<select name="y_first_pc" size="1" class="gensmall" size="1"> 
   <option value="0">-</option> 
   <option value="1">1</option> 
   <option value="2">2</option> 
   <option value="3">3</option> 
     </select>&nbsp;&nbsp;'; 
$s_y_first_pc = str_replace("value=\"".$user_first_pc_from."\">", "value=\"".$user_first_pc_from."\" SELECTED>" ,$s_y_first_pc); 

[Finde] 
'ALLOW_SIG_NO_CHECKED' => $allow_sig_no_checked, 
[Füge danach ein] 
'USER_FIRST_PC_FROM' => $user_first_pc_from, 
'S_D_FIRST_PC' => $s_d_first_pc, 
'S_M_FIRST_PC' => $s_m_first_pc, 
'S_Y_FIRST_PC' => $s_y_first_pc, 


Öffne templates/___/profile_add_body.tpl 
[Füge ein (wo's dir gefällt)] 
<tr> 
   <td class="row1"><span class="gen">{L_NEUFELD}:</span</td> 
   <td class="row2"><span class="gensmall">{S_D_FIRST_PC}&nbsp;{S_M_FIRST_PC}&nbsp;{S_Y_FIRST_PC}</span></td> 
</tr>
Hat vieleicht jemand eine idee wie ich es hinbekommen kann das,das vorher gespeicherte auch Automatisch wieder ausgewählt ist im Drop Down Menü?

Ich wäre echt dankbar für hilfe da ich so etwas dringend benötige!!

Grüße Candy
Zuletzt geändert von Candy am 10.03.2003 20:43, insgesamt 2-mal geändert.
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“