Req: problem med övningsuppgift i php.

Permalänk
Medlem

Req: problem med övningsuppgift i php.

hej jag har fått problem när jag ska ansluta till webbsidan med tabellerna i en övningsuppgift i databasmodellering, om någon skulle villja vara snäll och titta på det, är mycket tacksam.

Så här ser uppgiften ut och den börjar vid rubriken Del2
http://mt.sh.se/informatik/labwiki/index.php/Laboration_6:_Databasteori_och_databasimplementation

Jag använder XAMPP och jobbar lokalt.

Felmedelandet när jag ska ansluta till min sida ser ut så här:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\FTPROOT\KTD\sh10hp6582\www\lab6\Index.php on line 19

Logga in som admin
Skicka

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\FTPROOT\KTD\sh10hp6582\www\lab6\Index.php on line 55

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\FTPROOT\KTD\sh10hp6582\www\lab6\Index.php on line 67

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\FTPROOT\KTD\sh10hp6582\www\lab6\Index.php on line 79

Index.php SER UT SÅ HÄR:

<?php
require('DBconnection.php');

$sql = "select fnamn, enamn, arskurs from elev, arskurs where elev.arskursId = arskurs.arskursId and arskurs = 'AK1';";
$result = mysql_query($sql, $dbconnection);

$sql3 = "select fnamn, enamn, arskurs from elev, arskurs where elev.arskursId = arskurs.arskursId and arskurs = 'AK2';";
$result3 = mysql_query($sql3, $dbconnection);

$sql4 = "select fnamn, enamn, arskurs from elev, arskurs where elev.arskursId = arskurs.arskursId and arskurs = 'AK3';";
$result4 = mysql_query($sql4, $dbconnection);

$logintext=$_GET['loginnamn'];
$knapp=$_GET['send'];

$sql2 = "select epost from admin where epost ='$logintext'";
$result2 = mysql_query($sql2, $dbconnection);
$sqlSvar = mysql_fetch_array($result2);

//print_r($sqlSvar['epost']);

if (isset($knapp)){
if ($logintext == $sqlSvar['epost']){
header('Location: Admin.php');
}
else {
echo 'Login Failed';
}
}

echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Index</title>
</head>

<body>';

echo '<br />';

echo'Logga in som admin';
echo "<form method='get'>
<input type='text' name ='loginnamn';
<button type='submit' name='send' value='Skicka'>Skicka</button>
</form>";

echo '<br />';

echo "<table border='1'>";
while($myRow = mysql_fetch_array($result)){
echo "<tr>";
echo "<td>" . $myRow['fnamn'] . "</td>";
echo "<td>" . $myRow['enamn'] . "</td>";
echo "<td>" . $myRow['arskurs'] . "</td>";
echo "</tr>";
}
echo "</table>";

echo '<br />';

echo "<table border='1'>";
while($myRow2 = mysql_fetch_array($result3)){
echo "<tr>";
echo "<td>" . $myRow2['fnamn'] . "</td>";
echo "<td>" . $myRow2['enamn'] . "</td>";
echo "<td>" . $myRow2['arskurs'] . "</td>";
echo "</tr>";
}
echo "</table>";

echo '<br />';

echo "<table border='1'>";
while($myRow3 = mysql_fetch_array($result4)){
echo "<tr>";
echo "<td>" . $myRow3['fnamn'] . "</td>";
echo "<td>" . $myRow3['enamn'] . "</td>";
echo "<td>" . $myRow3['arskurs'] . "</td>";
echo "</tr>";
}
echo "</table>";

echo'

</body>
</html>';

?>

Men jag förstår verkligen inte vad jag har gjort fel, kanske kan något geni här förstå saken.

tack på förhand, Mvh Oscar

Permalänk
Medlem

Du verkar ha något problem med dina $result-variabler, mysql_query() returnerar en Resource om queryn gick bra, men returnerar False (boolean) om queryn av någon anledning misslyckades. Första steget är att kolla om din query fungerar som du vill, exempelvis med nåt enkelt:

if($result){ echo "Query lyckades"; }else{ die('Query misslyckades: ' . mysql_error()); }

Visa signatur

data, representation av värden, text etc. lämpad för överföring, tolkning eller bearbetning av människor eller maskiner.
dator, digital automatisk beräkningsmaskin som styrs av ett i dess minne lagrat program.

Permalänk
Medlem

hm

hej tack så mycket!!, men när jag lägger in den kodsnutten längst ner i index.php får jag bara svaret

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in D:\FTPROOT\KTD\sh10hp6582\www\lab6\Index.php on line 94

på line 94 ligger kod snutten jag fick.

Permalänk
Medlem

NU HAR JAG FÅTT DET ATT FUNGERA MEN DET FUNGERAR BARA I SAFARI, INGEN ANNAN WEBBLÄSARE

Permalänk
Medlem

Kom ihåg, PHP är ett server-side språk, allt du gör i PHP händer på servern och endast det du väljer skall skickas till klienten (exempelvis HTML-kod) visas i webbläsaren.

Din PHP-kod fungerar på samma sätt oavsett vilken webbläsare man använder, så ditt problem måste ligga i din HTML-kod.

Visa signatur

data, representation av värden, text etc. lämpad för överföring, tolkning eller bearbetning av människor eller maskiner.
dator, digital automatisk beräkningsmaskin som styrs av ett i dess minne lagrat program.

Permalänk

Jag antar att detta bara var en skoluppgift eller något men det kan ju ändå vara bra att veta att du har säkerhetshål i den där koden. Du måste escape:a stränger innan du skickar in dom i databasen.

Permalänk
Medlem

Ta bort $dbconnection från mysql_query() kan hjälpa, fick samma fel förut och då var det problemet. Men kan ha helt fel.

Permalänk
Medlem

yes! nu fungerar det tack
, men jag har en måsvinge på första sidan som inte ska vara där, men jag hittar den verkligen inte.

Permalänk
Medlem
Skrivet av oscwin:

yes! nu fungerar det tack
, men jag har en måsvinge på första sidan som inte ska vara där, men jag hittar den verkligen inte.

Står det inte vilken rad den är på i php-koden?