Avatar billede Slettet bruger
31. juli 2004 - 11:28 Der er 5 kommentarer og
1 løsning

Sikre at bruger ikke kan slette andres bookinger

På mit bookingsystem kan brugere vælge at slette deres booking igen.
Jeg vil gerne have, at brugeren kun kan slette egne tilføjede bookinger.
Hvordan kan jeg det ?
Jeg har tabellen "event2" med felterne: cod, active, title, userid, date, from_, till

Min kode:

<?PHP

include_once("core/main.php");
//if( !check_user_class($config["admmenu"]["events2"]["class"]) ) exit;

if( !check_module("events2") ) die( "module not enabled" );

   
include_once( "modules/events2/lang/msg_".check_lang($cfg["core"]["lang"]).".php" );
$index_page = false;

$page_name = $lang["EVENTS2_ADMIN"];

draw_header();

theme_draw_centerbox_open( $lang[EVENTS2_ADMIN] );

{
global $config, $cfg, $lang;


        mysql_query("DELETE FROM {$config["prefix"]}_events2 WHERE cod='$cod'");

        echo "Den valgte booking blev slettet!<br><br>";
    }

    echo "\n";

    $res = mysql_query("SELECT * from {$config["prefix"]}_events2 ORDER BY cod DESC LIMIT 0, 100");

    while($row = mysql_fetch_array($res));

 
theme_draw_centerbox_close();
theme_draw_centerbox_open( $lang["EVENTS_LIST_EVENTS"] );
events2_draw_list();

theme_draw_centerbox_close();
draw_footer();
?>

Stigman
Avatar billede cautoo Nybegynder
31. juli 2004 - 11:33 #1
WHERE cod='$cod' AND userid=$DIN_USERS_ID_STRING

så kan du altid lave en "count" der tæller hvor meget der bliver slettet...
hvis der bliver slettet 0, er det enten fordi der ikke er noget med værdien cod, eller fordi at brugeren prøvede, at slette en anden brugers cod...
Avatar billede cautoo Nybegynder
31. juli 2004 - 11:35 #2
hvis du vil tjekke antal behandlede rækker, kan du bruge mysql_affected_rows() umidelbart efter kørsel af din query...
Avatar billede Slettet bruger
31. juli 2004 - 13:44 #3
Jeg kan ikke få dit forslag til at virke. Hvad gør jeg galt ?
mysql_query("DELETE FROM {$config["prefix"]}_events2 WHERE cod='$cod' AND userid=$userid");

Jeg har også brug for at brugeren får en besked "Du kan ikke o.s.v.", når han prøver at slette en booking der ikke tilhører ham
Avatar billede Slettet bruger
02. august 2004 - 22:04 #4
Jeg har også prøvet denne her uden resultat
mysql_query("DELETE FROM {$config["prefix"]}_events2 WHERE cod='$cod' AND $userid=$_SESSION["wt"]["uid"]");

Hvordan sammenligner jeg userid fra events2 med $_SESSION["wt"]["uid"]
Avatar billede Slettet bruger
02. august 2004 - 23:08 #5
Den her fungerer

mysql_query("DELETE FROM {$config["prefix"]}_events2 WHERE cod='$cod' AND userid=" . $_SESSION["wt"]["uid"] .
Avatar billede Slettet bruger
02. august 2004 - 23:11 #6
Nej rettet til, glemte det sidste

mysql_query("DELETE FROM {$config["prefix"]}_events2 WHERE cod='$cod' AND userid=" . $_SESSION["wt"]["uid"] ."");
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester