Bewerbungs-Hack |
Zemo
Mitglied
Dabei seit: 18.03.04
Beiträge: 33
Forenversion: wbbLite
|
|
Alles klar, danke für die kleine php Lektion, MrMind. Aber mein Prob ist damit auch nicht gelöst
Aber verstanden habe ich es
Mfg Zemo
|
|
10.07.05 19:00 |
E-Mail
WWW
Finden
Als Freund hinzufügen
|
|
Zemo
Mitglied
Dabei seit: 18.03.04
Beiträge: 33
Forenversion: wbbLite
|
|
K, ich werde mal das Board von mir am WE lokal hostebn und dann auch nochmal probieren. Sage Bescheid was bei rum kommt. Eine Frage noch. Kann es an meinen Webspace liegen das es nicht funzt?
Mfg Zemo
|
|
14.07.05 16:35 |
E-Mail
WWW
Finden
Als Freund hinzufügen
|
|
MrMind
Sklave des Supportes
Dabei seit: 19.01.04
Beiträge: 3.349
Herkunft: Darmstadt/Odw.
|
|
Zitat: |
Original von Zemo
K, ich werde mal das Board von mir am WE lokal hostebn und dann auch nochmal probieren. Sage Bescheid was bei rum kommt. Eine Frage noch. Kann es an meinen Webspace liegen das es nicht funzt?
Mfg Zemo |
Könnte unter umständen sein, aber so wie ich Helmchen kenne, hat er es so gecodet, das es eigentlich heutzutage net mehr sein kann.
OK Habe den Fehler gefunden, weiß net ob es durch einen Fehler von dir kam oder ob es evtl. an der Anleitung hängt:
suche in der usercp.php nach:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
|
if(isset($_REQUEST['action'])) $action=$_REQUEST['action'];
else $action="";
if(!$action) eval("\$tpl->output(\"".$tpl->get("usercp")."\");");[/code]
[b][i]Verschiebe diese Zeilen vor dieser hier:[/i][/b]
[php]#### Anfang Bewerbungs-Hack ####
$i = 0; |
|
Danach sollte das 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:
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:
|
if(!$wbbuserdata['userid']) access_error();
if(isset($_REQUEST['action'])) $action=$_REQUEST['action'];
else $action="";
if(!$action) eval("\$tpl->output(\"".$tpl->get("usercp")."\");");
#### Anfang Bewerbungs-Hack ####
$i = 0;
$bewonof_f = $db->query_first("SELECT mode FROM bb".$n."_bewerbungoptions");
$bewonof = $bewonof_f['mode'];
if($bewonof == "1") {
$posten = '
<table cellpadding=4 cellspacing=1 border=0 width="{tableinwidth}" bgcolor="{tableinbordercolor}">
<tr bgcolor="{tabletitlecolor}" id="tabletitle">
<td colspan=3><normalfont color="{fontcolorsecond}"><b>Postenbewerbung</b></font></td>
</tr>
<tr><td id="tableb" bgcolor="{tablecolorb}"><b>Posten</b></td>
<td id="tableb" bgcolor="{tablecolorb}"><b>Benötigte Posts</b></td>
<td id="tableb" bgcolor="{tablecolorb}"></td>
</tr>';
$bewposten_f = $db->query("SELECT * FROM bb".$n."_groups WHERE canapply LIKE '1'");
$hasappl = $db->query_first("SELECT * FROM bb".$n."_bewerbungstable WHERE id LIKE '".$wbbuserdata['userid']."'");
$hasappl2 = $hasappl['id'];
if($hasappl2 == "") {
while($bewposten = $db->fetch_array($bewposten_f)) {
$pname = ($bewposten['title']);
$pid = ($bewposten['groupid']);
$pposts = ($bewposten['applyposts']);
$plink1 = '<a href="usercp.php?action=bewerben&pid='.$pid.'&pname='.$pname.'&sid='.$session[hash].'">Bewerben</a>';
$plink2 = "<s>Bewerben</s>";
$posten .='<tr><td id="tablea" bgcolor="{tablecolora}">'.$pname.'</td>';
$posten .='<td id="tablea" bgcolor="{tablecolora}">'.$pposts.'</td>';
if($wbbuserdata['userposts'] >= $pposts) {
$posten .='<td id="tablea" bgcolor="{tablecolora}">'.$plink1.'</td></tr>';
} else {
$posten .='<td id="tablea" bgcolor="{tablecolora}">'.$plink2.'</td></tr>';
}
$i++;
}
if($i == 0) {
$posten = "";
} else {
$posten.='</table>';
}
} else {
$posten.= '
<tr>
<td id="tablea" bgcolor="{tablecolora}" colspan=3><normalfont><center><b>Sie haben sich bereits für einen Posten beworben !</b></center></font></td>
</tr></table>';
}
}
if($action=="bewerben") {
$empf_f = $db->query_first("SELECT adminmail From bb".$n."_bewerbungoptions");
$empfänger = $empf_f['adminmail'];
$name=$wbbuserdata['username'];
$posten=$_REQUEST['pname'];
$pid = $_REQUEST['pid'];
$head="From:";
$head.=$master_board_name;
$text=$name;
$text.=" bewirbt sich für die Benutzergruppe: ";
$text.=$posten;
$text.=" für: ";
$text.=$master_board_name;
$text.=" !";
$db->query("INSERT INTO bb".$n."_bewerbungstable VALUES ('".$wbbuserdata['userid']."','".$pid."','".time()."')");
mail($empfänger,"Postenbewerbung",$text,$head);
header("Location: usercp.php?sid=$session[hash]");
}
#### Ende Bewerbungs-Hack ####
if($action=="profile_edit") {
if(isset($_POST['send'])) { |
|
Folgendes war das Problem:
Das Script hat versucht auf $action zu zugreifen (was in der alten Form nur gegangen wäre, wenn register globals = On ist in der php.ini) ohne diese Vorher (das muss man machen wenn register globals = Off ist, umständlich aber auch sicherer) zu überprüfen ob diese Gesetzt ist in den Supervariablen ($_GET,$_POST = $_REQUEST) und wenn nicht, dann Fehler wenn ja, dann Zuweisen.
Mfg
MrMind
__________________
Selbst ist der Coder
Coder under Linux
Ubuntu 5.10 Nutzer.
Meine Hacks
|
|
14.07.05 16:58 |
E-Mail
Finden
Als Freund hinzufügen
|
|
Zemo
Mitglied
Dabei seit: 18.03.04
Beiträge: 33
Forenversion: wbbLite
|
|
Also hier zwei Dinge:
1. Wenn ich die von dir geschriebenen Zeilen so verschiebe. (also von unter den Hack über den Hack) kann mann die Posten für die man sich bewerben kann nicht mehr sehen. Mache ich es dann wie voher sieht man die möglichen Posten + den Bewerbungslink nur nach einem Klick bleibt alles weiß
2. Habe ich es doch schon einmal lokal getestet mit den gleichen Dateien, die ich auch im Netz verwende. Komischerweise funzt es da einwandfrei. Ich denke mir jetzt einfach mal es hat was mit dem Space zu tun.
Wenn das der Fall ist bleibt mir nur der Ausbau. Was denkst du jetzt? Space?
Danke nochmals für deine Hilfe.
Mfg Zemo
|
|
14.07.05 17:28 |
E-Mail
WWW
Finden
Als Freund hinzufügen
|
|
Zemo
Mitglied
Dabei seit: 18.03.04
Beiträge: 33
Forenversion: wbbLite
|
|
Da steht falsch:
Zitat: |
-> Suche nach:
if(!$wbbuserdata['userid']) access_error();
-> darunter einfügen: |
Also nicht mein Fehler
Bitte ändern.
Auch dir Helmchen nochmals danke für den Hack
Mfg Zemo
|
|
14.07.05 17:46 |
E-Mail
WWW
Finden
Als Freund hinzufügen
|
|
DTD
Mitglied
Dabei seit: 28.07.05
Beiträge: 185
Herkunft: Duisburg Forenversion: WBB LITE 1.0.2 / WBB2.3.3
|
|
joa denke ich dochmal:
http://drakon.dr.funpic.de/wbblite/
muss ich was bestimmtes bei den ausgabe und template optionen machen?
hab bisher nix geändert am board, nur mail addi und die domain.
und die isntall php hab ich im acp ordner ausgeführt
|
|
30.08.05 15:09 |
E-Mail
WWW
Finden
Als Freund hinzufügen
|
|
Beckebans
Alternativ Mitglied
Dabei seit: 10.07.05
Beiträge: 481
Fähigkeiten: WBB Lite 1 Fortgeschritten Herkunft: Paderborn Forenversion: Lite 1.0
|
|
Hi, ich hab den Hack bei mir auch eingebaut (mit der Änderung in der Anleitung), dann eben kurz geguckt und es wurde alles richtig angezeigt.
Da ich das ganze jetzt aber nicht im Profil unten stehen, sondern als eine extra Seite (wie bei "Profil bearbeiten") haben wollte, habe ich den Code unten dabeigepackt. Ich hab zwar nicht viel Ahnung, aber es hat geklappt, dass die Seite durch nen Klick angezeigt wird. Die Anzeige der Gruppen und Bewerbungen ein- und ausschalten geht auch. Jetzt hab ich nur das Problem, dass bei einem Klick auf "Bewerben" nichts passiert. Es sieht so aus, als wenn die Seite neu läd und das wars dann. In der Bewerbungsliste steht nichts und eine eMail wird auch nicht verschickt. Was hab ich dabei falsch geändert?
Änderungen:
>> usercp.php
Suche:
code: |
1:
2:
3:
|
if($bewonof == "1") {
|
|
Darüber einfügen:
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
|
if($bewonof == "0") {
$bewerbung_aus = " ";
} else {
$bewerbung_aus = '
<a href="usercp.php?action=bewerben&sid=$session[hash]"><img src="{imagefolder}/usercp_pm.gif" border=0></a><br>
<normalfont><b><a href="usercp.php?action=bewerben&sid=$session[hash]">Bewerbung</a></b></font><br>
<smallfont>Hier können Sie sich um einen Posten im Forum bewerben.</font>';
}
|
|
Suche:
code: |
1:
2:
3:
|
if($action=="bewerben") {
|
|
Darunter einfügen:
code: |
1:
2:
3:
|
if(isset($_POST['send'])) {
|
|
Suche:
code: |
1:
2:
3:
|
header("Location: usercp.php?sid=$session[hash]");
|
|
Darunter einfügen:
code: |
1:
2:
3:
4:
5:
6:
|
exit();
}
eval("\$tpl->output(\"".$tpl->get("usercp_bewerben")."\");");
}
|
|
>> templates/usercp.tpl
Suche:
code: |
1:
2:
3:
4:
|
<smallfont>Private Nachrichten erlauben Ihnen das private Kommunizieren mit anderen Mitgliedern dieses Forums.</font></td>
</tr>
|
|
Darunter einfügen:
code: |
1:
2:
3:
4:
5:
6:
7:
8:
|
<tr>
<td id="tableb" bgcolor="{tablecolorb}" align="center" width="33%">
$bewerbung_aus</td>
<td id="tablea" bgcolor="{tablecolora}" align="center" width="33%"></td>
<td id="tableb" bgcolor="{tablecolorb}" align="center" width="33%"></td>
</tr>
|
|
>> templates/usercp_bewerben.tpl (neue Datei)
Inhalt:
code: |
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:
|
{!DOCTYPE}
<html>
<head>
<title>$master_board_name - Bewerbung</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> » <a href="usercp.php?sid=$session[hash]">Kontrollzentrum von $wbbuserdata[username]</a> » Bewerbung</b></font></td>
<td align="right"><smallfont><b>$usercbar</b></font></td>
</tr>
</table></td>
</tr>
</table><br><FORM ACTION="usercp.php" METHOD="POST">
$posten
<br>
<input type="hidden" name="action" value="$action">
<input type="hidden" name="send" value="send">
<input type="hidden" name="sid" value="$session[hash]">
</form>
$footer
</body>
</html>
|
|
__________________ Meine Hacks:
- Userpage
- Geburtstagsliste
- Beitrag bedanken
- User verlinken
- PHP-Fehler anzeigen
- Umfragedauer
- Neue Beiträge während Eigenem
- Gruppenspezifische Mitgliederliste
- und weitere...
|
|
25.10.05 16:30 |
E-Mail
WWW
Finden
Als Freund hinzufügen
|
|
|