Avatar billede nyhuus Nybegynder
03. april 2005 - 18:13 Der er 18 kommentarer og
1 løsning

if - else fejl :S

Der er en fejl i denne kode, den gør noget forkert.

<?
include("config.php");
$hent_data = mysql_query(" SELECT Id FROM brugere WHERE Id='".$_GET['edit']."' ORDER BY id DESC  ") or die("Der er sket en fejl: ".mysql_error());  // henter data via sql
$row = @mysql_fetch_array($hent_data);
if ($_GET['edit'] == $row['Id']){
if ($_SESSION['Bruger'] && $_SESSION['Pass'] && $_GET['edit'] == $_SESSION['Id']) {
echo "her er ikke noget endnu, men der kommer";
}else{
echo "Du har ikke adgang til denne side.";}
}

elseif ($_GET['user']){
resten af min kode }

fejlen er at selv om jeg bare får ind på profil alse min sidste else, så kommer den med "Du har ikke adgang til denne side"

det skal den kun sige hvis at $_GET['edit'] er = $_SESSION['Id']

nogen der kan hjælpe mig kan ik lige se fejlen. jeg ander ik hvad der skete, den virkede men, så lige pluselig virket den ik mere :S
Avatar billede jaw Nybegynder
03. april 2005 - 18:15 #1
Erhm er ikke 100% sikker på at jeg forstår dig, men prøv lige:

<?
include("config.php");
$hent_data = mysql_query(" SELECT Id FROM brugere WHERE Id='".$_GET['edit']."' ORDER BY id DESC  ") or die("Der er sket en fejl: ".mysql_error());  // henter data via sql
$row = @mysql_fetch_array($hent_data);
if ($_GET['edit'] == $row['Id']){
if ($_SESSION['Bruger'] && $_SESSION['Pass'] && $_GET['edit'] == $_SESSION['Id']) {
echo "her er ikke noget endnu, men der kommer";
}
}else{
echo "Du har ikke adgang til denne side.";
}
Avatar billede nyhuus Nybegynder
03. april 2005 - 18:17 #2
nej for den der else skal være inden for den første if..
Avatar billede nyhuus Nybegynder
03. april 2005 - 18:18 #3
det er den ikke ved den kode du har givet der kan jeg se uden og prøve den
Avatar billede jaw Nybegynder
03. april 2005 - 18:19 #4
Det jeg ikke forstår er: "det skal den kun sige hvis at $_GET['edit'] er = $_SESSION['Id']" <- mener du hvis den ikke er lig med?
Avatar billede jaw Nybegynder
03. april 2005 - 18:24 #5
Og sådan som jeg ser det, kan du helt udelade den ene if?

include("config.php");
$hent_data = mysql_query(" SELECT Id FROM brugere WHERE Id='".$_GET['edit']."' ORDER BY id DESC  ") or die("Der er sket en fejl: ".mysql_error());  // henter data via sql
$row = @mysql_fetch_array($hent_data);
if ($_SESSION['Bruger'] && $_SESSION['Pass'] && $_GET['edit'] == $_SESSION['Id']) {
echo "her er ikke noget endnu, men der kommer";
}else{
echo "Du har ikke adgang til denne side.";
}

For $_GET['edit'] vil altid være lige med $row['Id'] da det er kriteriet for at der overhovedet kommer data ud af din database (WHERE id = $_GET['edit'])
Avatar billede nyhuus Nybegynder
03. april 2005 - 18:24 #6
ja
Avatar billede nyhuus Nybegynder
03. april 2005 - 18:25 #7
men kan det have noget med mit mysql og gøre? for jeg har ikk rettet på siden siden virket :S det er det jeg ikke fatter noget af for jeg har ikke rørt den siden den virket :S
Avatar billede nyhuus Nybegynder
03. april 2005 - 18:28 #8
ja men den er ikke latid lig $_SESSION['Id'] som det er den skal i dette tilfælde

alså den skal side jeg ikke har adgang hvis mit at get id ikke er lig mit session id.. og er den lig smutterden længre i koden som ikke er vist, men det er helæler ik det der er problemet. det er jo at den sider det bare jeg går inmd på profil.php og ikke kun når det er &user. det er jo der problemet er
Avatar billede jaw Nybegynder
03. april 2005 - 18:29 #9
Erhm, nu har du altså for alvor tabt mig, sorry....
Avatar billede nyhuus Nybegynder
03. april 2005 - 18:40 #10
Problemet er at når jeg går ind på profil.php siger den "Du har ikke adgang til denne side"

men den skal vise de forsækllige brugere som kommer i en else command nederst på min side
Avatar billede nyhuus Nybegynder
03. april 2005 - 18:50 #11
Problemet løst :D nu er jeg glad igen

Lukket..
Avatar billede leif Seniormester
03. april 2005 - 19:10 #12
Hvad var problemet ?
Avatar billede nyhuus Nybegynder
04. april 2005 - 15:15 #13
if ($_GET['edit'] == $row['Id']){

skulle være

if ($_GET['edit']){

fordi at den lavede fejl at det var der om det gør ingen forskæl da det i sidste ende var samme tal lige gyldig hvad man gjore ;) bar en tompet fejl af mig
Avatar billede jaw Nybegynder
04. april 2005 - 16:56 #14
Men vel sådan set påtalt af mig i går kl. 18.24.18 ?
Avatar billede nyhuus Nybegynder
04. april 2005 - 17:38 #15
jaw nej, forde som sagt mange gange virket det en gang og det var inden jeg puttet det på. jeg ved enlig ik hvorfor jeg puttede det på..

eller det kan da godt være det er påtalt med dette her

For $_GET['edit'] vil altid være lige med $row['Id'] da det er kriteriet for at der overhovedet kommer data ud af din database (WHERE id = $_GET['edit'])

men det var jo ikke en løsning og sige det ;) for jeg fandt en back up af min fil :) derfor fandt jeg ud af det var det
Avatar billede jaw Nybegynder
04. april 2005 - 17:41 #16
Det er også lige meget, men hvis det var fejlen, så kommenterede jeg den da i hvert fald.
Avatar billede nyhuus Nybegynder
04. april 2005 - 17:44 #17
skal vi sige du kan fp 50 point for din kommentar? om "For $_GET['edit'] vil altid være lige med $row['Id'] da det er kriteriet for at der overhovedet kommer data ud af din database (WHERE id = $_GET['edit'])"

bare skriv et kommentar så opretter jeg bare lgie et spørgesmål hvor du kan få dem hvis det er okay med dig ;)
Avatar billede jaw Nybegynder
04. april 2005 - 17:45 #18
Nej, nej, det behøver du skam ikke. Det var jo ikke det der direkte løste dit problem, det var din back-up-fil, selvom det måske var løsningen :)

Men anyway, behold bare dine points...
Avatar billede nyhuus Nybegynder
04. april 2005 - 17:47 #19
okay, hvis du ik vil have dem såå ;) men ellers tak ;)
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