[PHP] verwijderen van bericht in forum, enkel door TS/admin*

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb voor men forum iets gemaakt waardoor enkel leden die het bericht hebben gepost en de admin het bericht kunnen deleten:
if(isset($HTTP_COOKIE_VARS[unaam]) && isset($HTTP_COOKIE_VARS[upass])) {

$sql = "SELECT username, rank FROM users WHERE username='$HTTP_COOKIE_VARS[unaam]'";
$query = mysql_query($sql);
while($res = mysql_fetch_array($query)) {

if($res['rank'] == "1") {
echo "llalalalal";
}
}
en
$sql = "SELECT username FROM users WHERE username='$user';
mysql_query($sql);
Hoe maak ik het nu zo dat oftewel de één oftewel het ander is... want anders moet ik 2 keer hetzelfde doen, maar hoe zet ik die 2 nu in één script?
Ik geraak er niet uit... sorry dat ik het zo moeilijk omschrijf, maar het gaat niet anders...

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
sorry voor de titel van dit topic.. was te snel.

Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 12:52
Lees ff dit:
Welkom in P&W -> Quickstart (update 2/10/2002)
- topic titel
- goede uitleg.

Ik begrijp niet goed wat je bedoelt, dus, lees die Quickstart ff, en pas je topic aan met de nodige informatie.

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik wil die 2 dingen zo doen:
if($deel1 || $deel2) {
echo "blaat";
}

maar kan je die 2 delen een variabele naam geven?

Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 12:52
Wat is deel1, wat is deel2?

Leg je probleem eens in duidelijke bewoordingen uit ipv met zo'n cryptische code.

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
deel 1 is dus voor de admins, als de user rank 1 is, dan heb ik ook nog een deel 2, dat is voor de leden die een bericht hebben gepost, maar die dat willen deleten, ze kunnen het enkel deleten als ze dat bepaalde bericht ook hebben gepost.

dat zijn dus 2 delen, hoe gooi ik die in 1 script, anders moet ik 2 apparte delen maken, begrijp je me nu wel?

Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 12:52
Je kan toch gewoon nagaan of diegene die nu het bericht wil verwijderen admin is. Zoja, dan mag het bericht verwijderd worden.
Als het userid van de poster gelijk is met het id van de gebruiker, dan mag het ook verwijderd worden.

pseudo code:
code:
1
2
3
4
if ( User.IsAdmin() || ( MessageUserID == CurrentUserID )
{
   // delete message.
}

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ja, dat begrijp ik, maar moet ik dan een functie schrijven?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
want dat kan al niet anders aangezien ik een hele query opbouw, dat mag je toch niet in een lus zetten?

Acties:
  • 0 Henk 'm!

  • gomaster
  • Registratie: Februari 2002
  • Laatst online: 17-09 17:39
offtopic:
zet geen passwords in je cookies! Kan gefaked worden.

Acties:
  • 0 Henk 'm!

  • martinvw
  • Registratie: Februari 2002
  • Laatst online: 20-08 20:35
Verwijderd schreef op 22 januari 2003 @ 18:58:
want dat kan al niet anders aangezien ik een hele query opbouw, dat mag je toch niet in een lus zetten?
Wie heeft t hier over een lus?

Mocht je de if bedoelen daar kan je alles inzetten wat op een of andere manier true of fout teruggeeft en dat is eigenlijk alles dus een functie is echt niet nodig je kan gewoon testen of je een result terugkrijgt van die query of dat iemand bepaalde rechten heeft

[ Voor 37% gewijzigd door martinvw op 22-01-2003 20:17 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik heb dus bijvoorbeeld 2 querys, kan ik dan zeggen:
$result1 = mysql_query($sql);
$result2 = mysql_query($sql2);

en dan
if($result1 || $result2) {
}
of mag dat niet?

Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op 22 January 2003 @ 18:40:
Ik heb voor men forum iets gemaakt waardoor enkel leden die het bericht hebben gepost en de admin het bericht kunnen deleten:


code:
1
2
3
4
5
6
7
8
9
10
if(isset($HTTP_COOKIE_VARS[unaam]) && isset($HTTP_COOKIE_VARS[upass])) {

$sql = "SELECT username, rank FROM users WHERE username='$HTTP_COOKIE_VARS[unaam]'";
$query = mysql_query($sql);
while($res = mysql_fetch_array($query)) {

if($res['rank'] == "1") {
echo "llalalalal";
}
}



en


[...]


Hoe maak ik het nu zo dat oftewel de één oftewel het ander is... want anders moet ik 2 keer hetzelfde doen, maar hoe zet ik die 2 nu in één script?
Ik geraak er niet uit... sorry dat ik het zo moeilijk omschrijf, maar het gaat niet anders...
$HTTP_COOKIE_VARS[unaam] -> $HTTP_COOKIE_VARS['unaam']
-Je zet toch niet username+pwd plain in cookie :?
Verwijderd schreef op 24 January 2003 @ 20:19:
ik heb dus bijvoorbeeld 2 querys, kan ik dan zeggen:
$result1 = mysql_query($sql);
$result2 = mysql_query($sql2);

en dan
if($result1 || $result2) {
}
of mag dat niet?
Tuurlijk kan dit...zolang je maar altijd nummertjes (1, 2, 3 etc.) aan aparte queries toekent mag je wel 100 queries door elkaar runnen.

[ Voor 4% gewijzigd door Verwijderd op 24-01-2003 20:27 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Verwijderd schreef op 24 January 2003 @ 20:27:
[...]

$HTTP_COOKIE_VARS[unaam] -> $HTTP_COOKIE_VARS['unaam']
-Je zet toch niet username+pwd plain in cookie :?


[...]

Tuurlijk kan dit...zolang je maar altijd nummertjes (1, 2, 3 etc.) aan aparte queries toekent mag je wel 100 queries door elkaar runnen.
en waarom niet dan?
ik kan ze wel md5'en als je dat wilt... :)
hmmmzz.. als ik meerdere querys door elkaar haal, hoe doe ik dan een while lus :s
mogen die wel door elkaar?

Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 12:56
Sorry maar, waarom niet dan is wel een hele domme opmerking vind je niet, als zoiets gezegd wordt zal daar waarschijnlijk wel iets mee bedoeld worden he!

Met een md5 er overheen wordt het al wel iets veiliger maar dan is het nog steeds verre van optimaal...

Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op 24 januari 2003 @ 20:46:
[...]

en waarom niet dan?
ik kan ze wel md5'en als je dat wilt... :)
hmmmzz.. als ik meerdere querys door elkaar haal, hoe doe ik dan een while lus :s
mogen die wel door elkaar?
Je kunt wel een while lus in een andere while lus doen ja...
bijvoorbeeld:
PHP:
1
2
3
4
5
6
7
8
$sql = SELECT xid FROM table1
while($sql){
$xid->uit $sql1
$sql2 = SELECT * FROM table2 WHERE xid = '$xid'
while($sql2){
// doe zooi
}
}
Pagina: 1