YourWBB


yourWBB » WoltLab Burning Board Generation 2 * » Alles von und für das WBB Lite 1.0.x » [WBB Lite 1.0.x] Ideen, Wünsche und Suche » Von Profil zu Listenerstellungshack » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag 8.851 Views | | Thema zu Favoriten hinzufügen
Seiten (4): « vorherige 1 2 [3] 4 nächste »
Neues Thema erstellen Antwort erstellen

Dieses Thema wurde als unerledigt markiert. Thread unerledigt

Zum Ende der Seite springen Von Profil zu Listenerstellungshack
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Schrimm
Banned


Dabei seit: 21.08.11
Beiträge: 700

Antworten Zitieren Editieren Melden       UP

Nimm nochmal den "php"-Code von oben, ich glaube, dass da ein Fehler war. Freude
26.01.14 18:12 Schrimm ist offline Finden Als Freund hinzufügen
Raylan Raylan ist weiblich
Mitglied


images/avatars/avatar-5826.gif

Dabei seit: 02.06.13
Beiträge: 63
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von Raylan
Antworten Zitieren Editieren Melden       UP

Welchen nun genau? verwirrt den?->

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:
if($action=="character_edit") {
 $result $db->query_first("SELECT birthday FROM bb".$n."_characters WHERE userid='$wbbuserdata[userid]'");
 if(isset($_POST['send'])) {
  if(isset($_POST['cr_day'])) $cr_day trim($_POST['cr_day']);
  if(isset($_POST['cr_month'])) $cr_month trim($_POST['cr_month']);
  if(isset($_POST['cr_year'])) $cr_year trim($_POST['cr_year']);

  if($cr_day && $cr_month$birthday=ifelse(strlen($cr_year)==4,$cr_year,ifelse(strlen($cr_year)==2,"19$cr_year","0000"))."-".ifelse($cr_month<10,"0$cr_month",$cr_month)."-".ifelse($cr_day<10,"0$cr_day",$cr_day);
  else $birthday "0000-00-00";

  if($result$db->query("UPDATE bb".$n."_characters SET birthday='".addslashes(htmlspecialchars_old($birthday))."' WHERE userid = '$wbbuserdata[userid]'");
  else $db->query("INSERT INTO bb".$n."_characters (userid,birthday) VALUES ('".intval($wbbuserdata[userid])."','".addslashes(htmlspecialchars_old($birthday))."')");

  header("Location: usercp.php?action=character_edit&sid=$session[hash]");
  exit();
 }
 else {
  $birthday=explode("-",$result['birthday']);
  $cr_day $birthday[2];
  $cr_month $birthday[1];
  $cr_year ifelse($birthday[0],$birthday[0],"");
 }

 for($i=1;$i<=31;$i++) $day_options.=makeoption($i,$i,$cr_day);
 for($i=1;$i<=12;$i++) $month_options.=makeoption($i,getmonth($i),$cr_month);

 eval("\$tpl->output(\"".$tpl->get("usercp_character_edit")."\");");
}
26.01.14 18:19 Raylan ist offline Finden Als Freund hinzufügen
Schrimm
Banned


Dabei seit: 21.08.11
Beiträge: 700

Antworten Zitieren Editieren Melden       UP

Genau den. Augenzwinkern
26.01.14 18:19 Schrimm ist offline Finden Als Freund hinzufügen
Raylan Raylan ist weiblich
Mitglied


images/avatars/avatar-5826.gif

Dabei seit: 02.06.13
Beiträge: 63
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von Raylan
Antworten Zitieren Editieren Melden       UP

Okay, passt alles wirklich suuuuuuper <3 Irre

soooo :3 jetzt wäre es schön, wenn eben an der Stelle in der temp das Alter des 'Charas' ausgespuckt werden könnte im Bezug auf ein voreingestelltes Jahr :3

ooooh gott ich bin dir so voll dankbar dass du dir hierfür so viel Zeit nimmst Ehren Blume
26.01.14 18:27 Raylan ist offline Finden Als Freund hinzufügen
Schrimm
Banned


Dabei seit: 21.08.11
Beiträge: 700

Antworten Zitieren Editieren Melden       UP

Dazu musst du nur eine "Differenz" bilden.

Die schnellste Variante wäre das ganze Datum in einen Timestamp umzuwandeln.

Also mittels "mktime()".

Sollte so aussehen:
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:
if($action=="character_edit") {
 $result $db->query_first("SELECT birthday FROM bb".$n."_characters WHERE userid='$wbbuserdata[userid]'");
 if(isset($_POST['send'])) {
  if(isset($_POST['cr_day'])) $cr_day trim($_POST['cr_day']);
  if(isset($_POST['cr_month'])) $cr_month trim($_POST['cr_month']);
  if(isset($_POST['cr_year'])) $cr_year trim($_POST['cr_year']);

  if($cr_day && $cr_month$birthday=ifelse(strlen($cr_year)==4,$cr_year,ifelse(strlen($cr_year)==2,"19$cr_year","0000"))."-".ifelse($cr_month<10,"0$cr_month",$cr_month)."-".ifelse($cr_day<10,"0$cr_day",$cr_day);
  else $birthday "0000-00-00";

  if($result$db->query("UPDATE bb".$n."_characters SET birthday='".addslashes(htmlspecialchars_old($birthday))."' WHERE userid = '$wbbuserdata[userid]'");
  else $db->query("INSERT INTO bb".$n."_characters (userid,birthday) VALUES ('".intval($wbbuserdata[userid])."','".addslashes(htmlspecialchars_old($birthday))."')");

  header("Location: usercp.php?action=character_edit&sid=$session[hash]");
  exit();
 }
 else {
  $birthday=explode("-",$result['birthday']);
  $cr_day $birthday[2];
  $cr_month $birthday[1];
  $cr_year ifelse($birthday[0],$birthday[0],"");

  $currentdate mktime(0,0,0,date('m'),date('j'),date('Y'));
  $birthdaydate mktime(0,0,0,$birthday[1],$birthday[2],$birthday[0]);
  $age intval(($currentdate-$birthdaydate)/(3600*24*365));
 }

 for($i=1;$i<=31;$i++) $day_options.=makeoption($i,$i,$cr_day);
 for($i=1;$i<=12;$i++) $month_options.=makeoption($i,getmonth($i),$cr_month);

 eval("\$tpl->output(\"".$tpl->get("usercp_character_edit")."\");");
}

Mit "$age" im Template wird das Alter angezeigt.

Dieser Beitrag wurde 3 mal editiert, zum letzten Mal von Schrimm: 26.01.14 18:50.

26.01.14 18:47 Schrimm ist offline Finden Als Freund hinzufügen
Raylan Raylan ist weiblich
Mitglied


images/avatars/avatar-5826.gif

Dabei seit: 02.06.13
Beiträge: 63
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von Raylan
Antworten Zitieren Editieren Melden       UP

statt dem m, j und Y natürlich das spieledatum eingeben nicht?

und einfügen muss ich das im php vermutlich hier:

php:
1:
2:
3:
4:
5:
6:
else {
  $birthday=explode("-",$result['birthday']);
  $cr_day $birthday[2];
  $cr_month $birthday[1];
  $cr_year ifelse($birthday[0],$birthday[0],"");
 }


also dass es dann final so aussieht:
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
else {
$birthday=explode("-",$result['birthday']);
$cr_day $birthday[2];
$cr_month $birthday[1];
$cr_year ifelse($birthday[0],$birthday[0],"");
$currentdate mktime(0,0,0,date('m'),date('j'),date('Y'));
$birthdaydate mktime(0,0,0,$birthday[1],$birthday[2],$birthday[0]);
$age intval(($currentdate-$birthdaydate)/(3600*24*365));
}


oder?

#Edit ich war dir zu schnell XDDD

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Raylan: 26.01.14 18:52.

26.01.14 18:51 Raylan ist offline Finden Als Freund hinzufügen
Schrimm
Banned


Dabei seit: 21.08.11
Beiträge: 700

Antworten Zitieren Editieren Melden       UP

Hallo,

Ich hab oben schon die "Vollversion" gepostet.

Was das "m", "j" und "Y" betrifft:
Wenn das Spieledatum sich vom "normalen Datum" unterscheidet, dann musst du es ersetzen.
Um die "Gleichheit" der Daten zu garantieren, aber mit führenden Nullen.

In dieser Form:
php:
1:
$currentdate mktime(0,0,0,Monat,Tag,Jahr);

Monat 1 - 9 so eintragen: 01,02,03,04...
Tag 1 - 9 so eintragen: 01,02,03,04...

Ich würde aber eine Umrechnung durchführen.
Beispiel:
Unterschied von "Heute" zum "Spieledatum" 4 Tage und 5 Jahre.
php:
1:
$currentdate mktime(0,0,0,date('m'),date('j'),date('Y')) - ((3600*24*365*5) + (3600*24*4));


edit:
Außer dein "Spieledatum" ist nicht "dynamisch" oder hat einen anderen Zeitablauf, als es in Wirklichkeit ist.

Dieser Beitrag wurde 3 mal editiert, zum letzten Mal von Schrimm: 26.01.14 19:05.

26.01.14 18:55 Schrimm ist offline Finden Als Freund hinzufügen
Raylan Raylan ist weiblich
Mitglied


images/avatars/avatar-5826.gif

Dabei seit: 02.06.13
Beiträge: 63
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von Raylan
Antworten Zitieren Editieren Melden       UP

hmmmm :/ ich hab das nu so eingefügt und bekomme ne fehlermeldung?

Zitat:
Parse error: syntax error, unexpected '/', expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/www/cwcity/hosting/u/m/umbrasolem/htdocs/wbblite/usercp.php(43) : eval()'d code on line 42


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:
if($action=="character_edit") {
 $result $db->query_first("SELECT birthday FROM bb".$n."_characters WHERE userid='$wbbuserdata[userid]'");
 if(isset($_POST['send'])) {
  if(isset($_POST['cr_day'])) $cr_day trim($_POST['cr_day']);
  if(isset($_POST['cr_month'])) $cr_month trim($_POST['cr_month']);
  if(isset($_POST['cr_year'])) $cr_year trim($_POST['cr_year']);

  if($cr_day && $cr_month$birthday=ifelse(strlen($cr_year)==4,$cr_year,ifelse(strlen($cr_year)==2,"19$cr_year","0000"))."-".ifelse($cr_month<10,"0$cr_month",$cr_month)."-".ifelse($cr_day<10,"0$cr_day",$cr_day);
  else $birthday "0000-00-00";

  if($result$db->query("UPDATE bb".$n."_characters SET birthday='".addslashes(htmlspecialchars_old($birthday))."' WHERE userid = '$wbbuserdata[userid]'");
  else $db->query("INSERT INTO bb".$n."_characters (userid,birthday) VALUES ('".intval($wbbuserdata[userid])."','".addslashes(htmlspecialchars_old($birthday))."')");

  header("Location: usercp.php?action=character_edit&sid=$session[hash]");
  exit();
 }
 else {
  $birthday=explode("-",$result['birthday']);
  $cr_day $birthday[2];
  $cr_month $birthday[1];
  $cr_year ifelse($birthday[0],$birthday[0],"");

  $currentdate mktime(0,0,0,08,15,2025);
  $birthdaydate mktime(0,0,0,$birthday[1],$birthday[2],$birthday[0]);
  $age intval(($currentdate-$birthdaydate)/(3600*24*365));
 }

 for($i=1;$i<=31;$i++) $day_options.=makeoption($i,$i,$cr_day);
 for($i=1;$i<=12;$i++) $month_options.=makeoption($i,getmonth($i),$cr_month);

 eval("\$tpl->output(\"".$tpl->get("usercp_character_edit")."\");");
}


Dateianhang:
unknown usercp.php (36 KB, 0 mal heruntergeladen)
26.01.14 19:09 Raylan ist offline Finden Als Freund hinzufügen
Schrimm
Banned


Dabei seit: 21.08.11
Beiträge: 700

Antworten Zitieren Editieren Melden       UP

Wie sieht dazu dein Template aus?
26.01.14 19:15 Schrimm ist offline Finden Als Freund hinzufügen
Raylan Raylan ist weiblich
Mitglied


images/avatars/avatar-5826.gif

Dabei seit: 02.06.13
Beiträge: 63
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von Raylan
Antworten Zitieren Editieren Melden       UP

Hab sie dir einfach mal angehängt Augenzwinkern

Dateianhang:
unknown usercp_character_edit.tpl (2 KB, 1 mal heruntergeladen)
26.01.14 19:19 Raylan ist offline Finden Als Freund hinzufügen
Schrimm
Banned


Dabei seit: 21.08.11
Beiträge: 700

Antworten Zitieren Editieren Melden       UP

php:
1:
<td colspan="3">$wbbuserdata[usernameist [i]$age[/iJahre alt.</td>

Du arbeitest in "HTML", da gibt es keinen "bbcode".
Bitte Folgendes verwenden:
php:
1:
<td colspan="3">$wbbuserdata[usernameist <i>$age</iJahre alt.</td>

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Schrimm: 26.01.14 19:22.

26.01.14 19:21 Schrimm ist offline Finden Als Freund hinzufügen
Raylan Raylan ist weiblich
Mitglied


images/avatars/avatar-5826.gif

Dabei seit: 02.06.13
Beiträge: 63
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von Raylan
Antworten Zitieren Editieren Melden       UP

auweia Peinlich auweia
Ich volltrottel Peinlich haha xD jaja vor lauter buchstaben und sonderzeichen^^ hab ich halt einfach mal schön die falschen klammern benützt sry XD

Edit: Klappt alles absolut super großes Grinsen


&& jetzt würde ich ja das ganze noch gerne in eine extra liste verpacken.... wo ich für die user nach Monaten/Jahren geordnet die Geburtsdaten eintragen lassen kann :3

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Raylan: 26.01.14 19:27.

26.01.14 19:26 Raylan ist offline Finden Als Freund hinzufügen
Schrimm
Banned


Dabei seit: 21.08.11
Beiträge: 700

Antworten Zitieren Editieren Melden       UP

Dazu müsstest du genau beschreiben, wie dies aussehen soll bzw. funktionieren soll, damit man da auch "vernünftig" arbeiten kann. fröhlich
26.01.14 19:29 Schrimm ist offline Finden Als Freund hinzufügen
Raylan Raylan ist weiblich
Mitglied


images/avatars/avatar-5826.gif

Dabei seit: 02.06.13
Beiträge: 63
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von Raylan
Antworten Zitieren Editieren Melden       UP

Okay großes Grinsen

Ich will im grunde so eine liste erstellen:
http://pentangle.bplaced.net/wbblite/thread.php?threadid=28

nur einfach automatisch mit den eingegebenen Daten :3
26.01.14 19:33 Raylan ist offline Finden Als Freund hinzufügen
Schrimm
Banned


Dabei seit: 21.08.11
Beiträge: 700

Antworten Zitieren Editieren Melden       UP

Wieder "ganz" einfach, nur benötigen wir dazu nun eine eigene "php"-Datei samt Templates.

Das wäre die Grundstruktur:
php:
1:
2:
3:
4:
5:
6:
7:
<?php
$filename="characters.php";

require("./global.php");

eval("\$tpl->output(\"".$tpl->get("characters")."\");");
?>

Somit brauchst du eine "characters.tpl", die deinen Aufbau der Seite beschreibt.

Weiter gehts mit dem Auslesen der Daten:
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
<?php
$filename="characters.php";

require("./global.php");

$charactersbit='';
$result $db->query("SELECT birthday FROM bb".$n."_characters ORDER BY birthday ASC");
while($characters $db->fetch_array($result)) {
 $birthday=explode("-",$characters['birthday']);
 $currentdate mktime(0,0,0,08,15,2025);
 $birthdaydate mktime(0,0,0,$birthday[1],$birthday[2],$birthday[0]);
 $age intval(($currentdate-$birthdaydate)/(3600*24*365));

 eval ("\$charactersbit .= \" ".$tpl->get("characters_charactersbit")."\";");
}

eval("\$tpl->output(\"".$tpl->get("characters")."\");");
?>

Diese benötigt nun eine "characters_charactersbit.tpl", die den Aufbau des Datensatzes(Der Charaktere) beschreibt, der in die Seite eingefügt wird.

Wichtig ist, dass du die Variable "$charactersbit" auch in deiner "characters.tpl" hast.

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Schrimm: 26.01.14 19:50.

26.01.14 19:49 Schrimm ist offline Finden Als Freund hinzufügen
Raylan Raylan ist weiblich
Mitglied


images/avatars/avatar-5826.gif

Dabei seit: 02.06.13
Beiträge: 63
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von Raylan
Antworten Zitieren Editieren Melden       UP

Okay.... gehen wir ganz langsam vor smile dieser aufbau macht sinn. allerdings muss ich ja dann den aufbau der daten so wie ich sie haben will shcon in meiner charactersbit.tpl festlegen?

und da liegt mein problem, was genau leg ich nun fest..... :/ also die variablen ich will ja erst das datum, dann den Namen und das so geordnet :3
26.01.14 19:56 Raylan ist offline Finden Als Freund hinzufügen
Schrimm
Banned


Dabei seit: 21.08.11
Beiträge: 700

Antworten Zitieren Editieren Melden       UP

Ganz normales "HTML".
Das kannst du machen wie du lustig bist.

Bisher stehen dir im Grunde "4 Variablen" zur Verfügung, wenn du obige "php"-Datei hast.

1. $birthday[0] - Das Geburtsjahr
2. $birthday[1] - Der Geburtsmonat
3. $birthday[2] - Der Geburtstag
4. $age - Das Alter

Die Sortierung übernimmt bereits die "php"-Datei. Augenzwinkern

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Schrimm: 26.01.14 20:00.

26.01.14 19:59 Schrimm ist offline Finden Als Freund hinzufügen
Raylan Raylan ist weiblich
Mitglied


images/avatars/avatar-5826.gif

Dabei seit: 02.06.13
Beiträge: 63
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von Raylan
Antworten Zitieren Editieren Melden       UP

aber ich kann die nun nicht so sortieren wie in dem beispiel dass ich dir gezeigt habe, also grundsätzlich nach monaten und mit dem Charanamen dazu?
26.01.14 20:10 Raylan ist offline Finden Als Freund hinzufügen
Schrimm
Banned


Dabei seit: 21.08.11
Beiträge: 700

Antworten Zitieren Editieren Melden       UP

Sind sie doch schon.
Das hat die "php"-Datei übernommen. Augenzwinkern

edit(Beispiel):
characters.tpl:
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:
{!DOCTYPE}
<html>
<head>
<title>$master_board_name Charaktere</title>
$headinclude
</head>

<body id="bg">
 $header
 <tr bgcolor="{tablecolora}" id="tablea">
  <td><table cellpadding=0 cellspacing=0 border=0 width="100%">
   <tr>
    <td><smallfont><b><a href="index.php?sid=$session[hash]">$master_board_name</a» Charaktere</b></font></td>
    <td align="right"><smallfont><b>$usercbar</b></font></td>
   </tr>
  </table></td>
 </tr>
</table><br>
<table cellpadding=4 cellspacing=1 border=0 width="{tableinwidth}" bgcolor="{tableinbordercolor}">
 <tr bgcolor="{tabletitlecolor}" id="tabletitle" align="center">
  <td><smallfont color="{fontcolorsecond}"><b>Geburtsdatum</b></font></td>
  <td><smallfont color="{fontcolorsecond}"><b>Alter</b></font></td>
  <td><smallfont color="{fontcolorsecond}"><b>Name</b></font></td>
 </tr>
 $charactersbit
</table>
$footer
</body>
</html>


characters_charactersbit.tpl:
php:
1:
2:
3:
4:
5:
<tr align="center">
 <td bgcolor="{tablecolora}" id="tablea" nowrap align="left"><normalfont><b>$birthday[2].$birthday[1].$birthday[0]</b></font></td>
 <td bgcolor="{tablecolorb}" id="tableb">$age</td>
 <td bgcolor="{tablecolora}" id="tablea"></td>
</tr>

Dieser Beitrag wurde 4 mal editiert, zum letzten Mal von Schrimm: 26.01.14 20:16.

26.01.14 20:11 Schrimm ist offline Finden Als Freund hinzufügen
Raylan Raylan ist weiblich
Mitglied


images/avatars/avatar-5826.gif

Dabei seit: 02.06.13
Beiträge: 63
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von Raylan
Antworten Zitieren Editieren Melden       UP

Entschuldige XD ich bin nu einfach verwirrt. ich muss doch nun in den Templates festlegen was angezeigt wird, nicht?

ich will das so haben:
Datum | User | Alter

$birthday[2].$birthday[1].$birthday[0] | ??? | $age

Aber jetzt hab ich das ja noch lange nicht in so einer schönen Tabelle?^^° *steht vermutlich gerade vollends auf dem schlauch^^*
26.01.14 20:15 Raylan ist offline Finden Als Freund hinzufügen
Seiten (4): « vorherige 1 2 [3] 4 nächste » Baumstruktur | Brettstruktur
Gehe zu:

Neues Thema erstellen Antwort erstellen

yourWBB » WoltLab Burning Board Generation 2 * » Alles von und für das WBB Lite 1.0.x » [WBB Lite 1.0.x] Ideen, Wünsche und Suche » Von Profil zu Listenerstellungshack