Gå til innhold

Enkelt spørsmål ..


Anbefalte innlegg

Problem:

Når dette skriptet er kjørt, skal brukeren sendes videre til en annen side, ikke original siden. Tok dere den?

 

Her er koden til vote-skriptet:

<?php



if (!isset($_REQUEST[ID])) {

include 'index.php';

exit();

}



/*  Database Information - Required!!  */

/* -- Configure the Variables Below --*/

$dbhost = '127.0.0.1';

$dbusername = 'root';

$dbpasswd = 'root';

$database_name = 'vote';



/* Database Stuff, do not modify below this line */



$connection = mysql_pconnect("$dbhost","$dbusername","$dbpasswd") 

      or die ("Couldn't connect to server.");

      

$db = mysql_select_db("$database_name", $connection)

      or die("Couldn't select database.");

      

include 'check_ip.php';

check_ip();

  

$query = "SELECT stemmer FROM vote WHERE ID='$_REQUEST[ID]' LIMIT 1";

$result = mysql_query($query) or die("<br>Query failed:<br> $query");

$num=mysql_numrows($result);



$stemmer=mysql_result($result,0,"stemmer");

$ny_stemmer=$stemmer+1;



$query = "UPDATE vote SET stemmer = $ny_stemmer WHERE ID = '$_REQUEST[ID]' LIMIT 1";

$result = mysql_query($query) or die("<br>Query failed:<br> $query");



$dato=DATE('m.d.y H:i');

$ip = $_SERVER['REMOTE_ADDR'];

$query = "INSERT INTO voted VALUES ('','$ip','$dato')";

$result = mysql_query($query) or die("<br>Query failed:<br> $query");



include 'index.php';



?>

 

Har kikket litt rundt på forumet, prøvd ut løsninger osv, men uten hell. Har to andre php-filer (checkip og index.php) som hører med denne, men tror clue'et ligger i denne fila, hvor man faktisk vote'er. Glimmers om noen kan hjelpe :green:

Lenke til kommentar
Videoannonse
Annonse
  • 1 måned senere...

Vurder et annet vote script, det scriptet der er litt "tungvindt"

 

$query = "SELECT stemmer FROM vote WHERE ID='$_REQUEST[iD]' LIMIT 1";

 

$result = mysql_query($query) or die("<br>Query failed:<br> $query");

 

$num=mysql_numrows($result);

 

 

 

$stemmer=mysql_result($result,0,"stemmer");

 

$ny_stemmer=$stemmer+1;

 

 

 

$query = "UPDATE vote SET stemmer = $ny_stemmer WHERE ID = '$_REQUEST[iD]' LIMIT 1";

 

Kan skrives som:

$query = "UPDATE vote SET stemmer = (stemmer +1) WHERE ID = '$_REQUEST[ID]'";

Furutsatt at id er unik, noe den burde være.

 

Videre er ikke dette scriptet sikkert - hvem som helst kan hacke databasen din dersom brukeren du har logget på ikke kun har read rettigheter eller magic quotes er på - noe jeg tror den nå er defalut i php. Uansett burde du bruke mysql_escape_string()

 

Så tilbake til problemet ditt, på slutten av scriptet ditt, rett før include 'index.php'; så setter du inn:

header("Location: siden-de-skal-sendes.til");
exit;

 

Pass på at du or die() funksjoner der - skrives en av de kommentarene vil ikke header fungere.

Endret av ????????
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...