hallo

ik insert een aantal waardes met succes
vlak achter die insert vraag ik 1 van de waardes op, die moet dan tezien zijn in een succes message, en je verderwijzen naar een bepaalde pagina adhv dat getal ...

het inserten lukt zonder probleem, het id zit in de database
maar in de message en forward helemaal onderaan, krijg ik de waarde 0 ...

[code]<?php

include("./includes/egl_inc.php");
$secure = new secure();
$secure->secureGlobals();
page_protect();
session_start();
$playerid = $_SESSION['tid'];
$matchidcheck = $_POST['match'];

if($_SESSION['user'])
{
global $config;

$matchcheck = mysql_query("SELECT status FROM ffa_matches where id=$matchidcheck");

while($row = mysql_fetch_array($matchcheck))
{
$matchcheckcheck = $row['status'] ;
$matchcheckcheckstr = (string) $matchcheckcheck;
}

if ($matchcheckcheckstr == '1')
{
$mes="This match is full";
return error($mes,'./ffamatches.php');
}


$vote1 = $_POST['map1'];

$vote2 = $_POST['map2'];

$vote3 = $_POST['map3'];



$votecheck = mysql_fetch_array(mysql_query("SELECT id FROM ffa_mapvotes WHERE playerid=$playerid and matchid=$matchidcheck"));
$votechecker = $votecheck[id];

$vote1check = mysql_fetch_array(mysql_query("SELECT map FROM ffa_maplists WHERE id='$vote1'"));
$vote1checker = $vote1check[map];

$vote2check = mysql_fetch_array(mysql_query("SELECT map FROM ffa_maplists WHERE id='$vote2'"));
$vote2checker = $vote2check[map];

$vote3check = mysql_fetch_array(mysql_query("SELECT map FROM ffa_maplists WHERE id='$vote3'"));
$vote3checker = $vote3check[map];

if (!$votechecker)
{
$insertSite_sql = "INSERT INTO ffa_mapvotes (matchid,playerid,mapid,mapname) VALUES
($matchidcheck,$playerid,$vote1,'$vote1checker')";
$insertSite= mysql_query($insertSite_sql);

$insertSite_sql2 = "INSERT INTO ffa_mapvotes (matchid,playerid,mapid,mapname) VALUES
($matchidcheck,$playerid,$vote2,'$vote2checker')";
$insertSite2= mysql_query($insertSite_sql2);

$insertSite_sql3 = "INSERT INTO ffa_mapvotes (matchid,playerid,mapid,mapname) VALUES
($matchidcheck,$playerid,$vote3,'$vote3checker')";
$insertSite3= mysql_query($insertSite_sql3);


$mes="$matchidcheck Vote Succesfull ... Please Wait ...";
return success($mes,'./ffacheckin.php?match=$matchidcheck');
}
$mes="You cannot vote again !";
return error($mes);
}
include("$config[html]");
?>[code]

vervang ik de laatste regel door
return success($mes,'./ffacheckin.php?match=122');
werkt het wel

dus men waarde van $matchidcheck is ineens weg. hoe kan dit?
Zet je code tussen [code] en [/code] tags en zet om je php <?php en ?>.

[size=xsmall]Toevoeging op 06/05/2012 16:32:18:[/size]

$vars buiten quotes houden
Script is lek -> sql-injection
Om een array-key horen quotes
ik zie werkelijk geen logica in je scripts. ik zie global, meerdere keren return staan, maar ik zie nergens functions (of classes)?

verder veels te veel queries, dat kan je samenvoegen.
variabelen buiten quotes
foutafhandeling, zou je misschien iets opleveren
kan je een voorbeeld geven van hoe ik men vars buiten die quotes haal?
ok bedankt hiervoor, ga ik zeker toepassen in het vervolg
maar in dit geval lost het mijn probleem niet op
er zit plots een 0 in mijn $matchidcheck ipv het id ...

[size=xsmall]Toevoeging op 06/05/2012 16:48:50:[/size]

het waren de single ' in return success($mes,'./ffacheckin.php?match=$matchidcheck');


toch bedankt voor de moeite
Groovez acid op 06/05/2012 16:24:58

<?php
return error($mes);
?>

vervang ik de laatste regel door
return success($mes,'./ffacheckin.php?match=122');
werkt het wel

dus men waarde van $matchidcheck is ineens weg. hoe kan dit?


Dan lijkt het in de function error() te zitten.

Reageren