Just nu i M3-nätverket
Gå till innehåll

har kodat mitt forum men funkar ej :S


[vic]

Rekommendera Poster

hej nu har jag settat och lärt mig lite och lärde mig koda ett forum i php men när jag ska connect till detta forum så kommer det bara upp en text fil vad kan jag ha gjort för fel ?

jag har dess php filer (looka bilden)

snälla hjälp mig :) behöver verkligen hjälp jag

för att kunna se vad alla filer innehåller för script så ligger det på

http://vic.hotserv.dk/namnetpåfilen

 

[bild bifogad 2005-12-11 11:59:36 av 4ThEleMenT]

782068_thumb.jpg

Länk till kommentar
Dela på andra webbplatser

Öh, om vi tar t ex login.php, så ser den ut så här (om man tittar på html-koden):

[log]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Untitled Document</title>

</head>

 

<body>

<p>&nbsp;</p>

<p> <strong> &lt;? session_start(); ?&gt;</strong></p>

<p> &lt;div align=&quot;center&quot;&gt;<br />

 

&lt;form name=&quot;login&quot; method=&quot;post&quot; action=&quot;login2.php&quot;&gt;<br />

Username:&lt;br&gt;<br />

&lt;input name=&quot;username&quot; type=&quot;text&quot; id=&quot;username&quot;&gt;<br />

 

&lt;br&gt;<br />

Password:&lt;br&gt;<br />

&lt;input name=&quot;password&quot; type=&quot;password&quot; id=&quot;password&quot;&gt;<br />

&lt;br&gt;<br />

&lt;input type=&quot;submit&quot; name=&quot;Submit&quot; value=&quot;Submit&quot;&gt;<br />

 

&lt;/form&gt;<br />

&lt;/div&gt; </p>

</body>

</html>

[/log]

Tanken är väl snarare att den ska se ut så här:

[log] <? session_start(); ?>

 

<div align="center">

<form name="login" method="post" action="login2.php">

Username:<br>

<input name="username" type="text" id="username">

<br>

Password:<br>

<input name="password" type="password" id="password">

<br>

<input type="submit" name="Submit" value="Submit">

</form>

</div>[/log]Vad använder du för texteditor när du skriver din PHP-kod?

 

Länk till kommentar
Dela på andra webbplatser

jag använder dreamweaver mycket enklare att skriva i den än i notepad samt att jag är inte elit på alla tags så då finns det ju lite i i dreamweaver 8

asså vart det massor av fel? :S

har du lust att hjälpa mig med alla ?:)

[inlägget ändrat 2005-12-11 18:08:47 av 4ThEleMenT]

Länk till kommentar
Dela på andra webbplatser

Om man skriver in PHP-kod i designläget kommer Dreamweaver tro att det är vanlig löpande text. Löpande text läggs in mellan <p>-taggar och i löpande text måste < och > översättas till < respektive > - därför blev det som det blev.

 

[inlägget ändrat 2005-12-12 14:15:20 av lizardKng]

Länk till kommentar
Dela på andra webbplatser

ok så då måste jag skriva om allt om det ska fungera ?

 

i vilket format ska det vara kodat xhtml eller html finns kolla bilden

 

http://vic.hotserv.dk//image/kodning.JPG hmm :S är nybörjare ska nog önska mig en html, asp eller php bok i jul klapp ;)

 

asså nu har jag fått det att funka men kan någon kolla vad det nu blev för fel :S

prova att registrera er det står något helt cp

 

http://vic.hotserv.dk/register.php

 

http://www.phpfi.com/91474 där är hela login2 som det är fel på

[inlägget ändrat 2005-12-12 17:04:10 av 4ThEleMenT]

Länk till kommentar
Dela på andra webbplatser

session_start() är det absolut första man måste göra om man använder sessioner. Det ser ut som om något skickas till webläsaren innan dess.

 

Länk till kommentar
Dela på andra webbplatser

ok

klistrar in både login 1 och 2 så kan någon varfa snälll coh fixa det

jag provade med sessions men det funkade inte eller

:S

<!>LOGIN.php<!>

 

[log]<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

</head>

 

<body> <div align="center">

<form name="login" method="post" action="login2.php">

Username:<br>

<input name="username" type="text" id="username">

<br>

Password:<br>

<input name="password" type="password" id="password">

<br>

<input type="submit" name="Submit" value="Submit">

</form>

</div>

</body>

</html>[/log]

 

login2.php

[log]<html>

<body> <?

 

 

 

include("connect.php");

$username = htmlspecialchars($_POST['username'], ENT_QUOTES);

$password = htmlspecialchars($_POST['password'], ENT_QUOTES);

$password = md5($password);

$logcheck = mysql_query("SELECT * FROM users WHERE username='$username' AND password='$password'");

$rows = mysql_num_rows($logcheck);

if($rows==1) {

$loadlevel = mysql_fetch_array($logcheck);

$level = $loadlevel['level'];

$sig = $loadlevel['signature'];

$avatar = $loadlevel['avatar'];

$_SESSION['auth'] = true;

$_SESSION['user'] = $loadlevel['username'];

$_SESSION['level'] = $level;

$_SESSION['id'] = $loadlevel['id'];

$_SESSION['signature'] = $loadlevel['signature'];

$_SESSION['avatar'] = $loadlevel['avatar'];

setcookie("forumsuser", $loadlevel['username'], time()+60*60*24*30, "http://gba-nds.info.se"'>http://gba-nds.info.se");

setcookie("forumspass", $loadlevel['password'], time()+60*60*24*30, "http://gba-nds.info.se");

 

echo "du har loggat in";

header("Location: forums.php");

 

}else{

echo "Wrong user/ password combo. Please go back and try again. ";

}

?>

</body>

</html>

[/log]

 

 

[inlägget ändrat 2005-12-15 19:49:20 av 4ThEleMenT]

Länk till kommentar
Dela på andra webbplatser

Har inte följt med i tråden så jag är inte helt hundra på vad problemet är men det här kommer inte att fungera:

 

<html>

... 21 bortklippta rader...

[color="#ff0000"]setcookie[/color]("forumsuser", $loadlevel['username'], [color="#ff0000"]time[/color]()+60*60*24*30, "http:[color="#006400"]//gba-nds.info.se");[/color]
[color="#ff0000"]setcookie[/color]("forumspass", $loadlevel['password'], [color="#ff0000"]time[/color]()+60*60*24*30, "http:[color="#006400"]//gba-nds.info.se");[/color]

[color="#0000ff"]echo[/color] "du har loggat in";
[color="#ff0000"]header[/color]("Location: forums.[color="#0000ff"]php[/color]");

 

Både setcookie() och header() behöver kunna skicka sk headers, dvs data som kommer till browsern innan den får sidan, eftersom du har börjat med att skicka <html> så har du redan börjat skicka sidan och då är det försent att göra det där.

 

Antagligen gjorde du samma fel när du använde session_start(), den måste också vara först (som andra har påpekat), dvs före <html> (till och med före eventuella tomrader först i filen).

 

 

Länk till kommentar
Dela på andra webbplatser

funkar ändå inte :S

Fantastisk felbeskrivning :-)

Om du börjar med att leta efter vad som är fel så kanske du hittar det, du gör ju ingen felkontroll alls utan tar bara för givet att allt bara ska fungera.

 

Edit: Koden som är inklistrad här http://c2c5ebb97429ea4d.paste.se/ fungerar.

Får du inte den att fungera så har du något annat fel, kanske i den connect.php som du inkluderar.

Eftersom du skickar headers får det inte vara en enda rad output (dvs echo-rader eller sånt som ligger utanför <?php ?>) innan dina header-rader. Inklusive tomrader. Det får alltså inte vara några tomrader först eller sist i varesig login2.php eller connect.php.

 

Jag tog bort de helt meningslösa kakorna, tycker du att det är en bra ide att skicka tillbaka en md5-checksumma i en kaka med namn lösenord kan du ju alltid lägga tillbaka dem. Jag skulle dock avråda från att speca domän på det sätt du gör, det är nämligen fel, det du specar är en URL inte en domän.

 

Kan inte göra mer, resten måste du göra själv. Ett första steg är att försöka felsöka och inte bara nöja sig med "funkar inte".

 

[inlägget ändrat 2005-12-16 15:46:21 av fhe]

Länk till kommentar
Dela på andra webbplatser

tack men det funkar ändå inte

jag tog bort header och då blev det konstigt man kom aldrig vidare till forums.php men det kom inte upp något fel meddelande :)

[inlägget ändrat 2005-12-16 16:38:59 av 4ThEleMenT]

Länk till kommentar
Dela på andra webbplatser

För det första, jag hade ett slarvfel (som du förvisso inte upptäckt eftersom du inte kommer så långt)

Bättre kod här: http://cae279d7d2db9faa.paste.se/

 

Men något fel på rad 28 var det verkligen inte i det förra heller... På rad 28 står det header()... Förhoppningsvis får du ett felmeddelande också (som du verkar betrakta som en hemlighet) men det mest rimliga felet är just att du har skickat ut data innan du kommer fram till raden (vilket folk har försökt förklara för dig flera gånger att man inte får). Sluta med det i så fall.

 

Koden fungerar klockrent om man inte skickar ut data (inklusive tomma rader).

 

Det finns en enkel fix för att slippa bry sig men det är mycket bättre att du lär dig förstå var du gör fel.

 

Länk till kommentar
Dela på andra webbplatser

nu får jag felmeddelandet

 

 

Fatal error: Call to undefined function mysql_fetch_arrray() in /var/www/hotserv.dk/users/vic/login2.php on line 16

 

fick inte det förut när jag tog bort header och sen när jag gick vidare till forums så funkade det inte :S

tror att hela forumet är lite felkodat ;)

 

[log]<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<title>Untitled Document</title>

</head>

 

<body><div align="center">

<? session_start(); ?><?php

include("connect.php");

$query = "SELECT COUNT(id) AS numrows FROM forumboards WHERE category='1'";

$result = mysql_query($query) or die('Error, query failed');

$row = mysql_fetch_array($result, MYSQL_ASSOC);

$1 = $row['numrows'];

 

$query = "SELECT COUNT(id) AS numrows FROM forumboards WHERE category='2'";

$result = mysql_query($query) or die('Error, query failed');

$row = mysql_fetch_array($result, MYSQL_ASSOC);

$2 = $row['numrows'];

 

$query = "SELECT COUNT(id) AS numrows FROM forumboards WHERE category='3'";

$result = mysql_query($query) or die('Error, query failed');

$row = mysql_fetch_array($result, MYSQL_ASSOC);

$3 = $row['numrows'];

 

$query = "SELECT COUNT(id) AS numrows FROM forumboards WHERE category='4'";

$result = mysql_query($query) or die('Error, query failed');

$row = mysql_fetch_array($result, MYSQL_ASSOC);

$4 = $row['numrows'];

 

$query = "SELECT COUNT(id) AS numrows FROM forumboards WHERE category='5'";

$result = mysql_query($query) or die('Error, query failed');

$row = mysql_fetch_array($result, MYSQL_ASSOC);

$5 = $row['numrows'];

 

$query = "SELECT COUNT(id) AS numrows FROM forumboards WHERE category='6'";

$result = mysql_query($query) or die('Error, query failed');

$row = mysql_fetch_array($result, MYSQL_ASSOC);

$6 = $row['numrows'];

?>

<table width="75%" border="1" cellpadding="0" cellspacing="0" bordercolor="#000000">

<tr bgcolor="#0099CC">

<td width="53%"><div align="center">Category</div></td>

<td width="47%"><div align="center">Number of Boards </div></td>

</tr>

<tr>

<td><div align="center"><a href="/?id=forum&x=category&tid=1">GBA-NDS</a> </div></td>

<td><div align="center"><? echo "$1"; ?></div></td>

</tr>

<tr>

<td><div align="center"><a href="/?id=forum&x=category&tid=2">GBAMP-M3</a> </div></td>

<td><div align="center"><? echo "$2"; ?></div></td>

</tr>

<tr>

<td><div align="center"><a href="/?id=forum&x=category&tid=3">Downloads</a></div></td>

<td><div align="center"><? echo "$3"; ?></div></td>

</tr>

<tr>

<td><div align="center"><a href="/?id=forum&x=category&tid=4">HELP</a></div></td>

<td><div align="center"><? echo "$4"; ?></div></td>

</tr>

<tr>

<td><div align="center"><a href="/?id=forum&x=category&tid=5">Nintendo Ds games and more</a></div></td>

<td><div align="center"><? echo "$5"; ?></div></td>

</tr>

<tr>

<td><div align="center"><a href="/?id=forum&x=category&tid=6">GB Advance games and more</a></div></td>

<td><div align="center"><? echo "$6"; ?></div></td>

</tr>

<tr>

<td><div align="center"><a href="/?id=forum&x=category&tid=7">Open forum</a> </div></td>

<td><div align="center"><? echo "$7"; ?></div></td>

</tr>

<tr>

<td><div align="center"><a href="/?id=forum&x=category&tid=8">Other consoles</a> </div></td>

<td><div align="center"><? echo "$8"; ?></div></td>

</tr>

</table>

</div>

</body>

</html>

[/log] du verkar ganska duktig vart har du lärt dig allt?

 

jag har suttit och läst php i flera veckor nu :) vet inte om jag har lärt mig så mycket :)

 

[inlägget ändrat 2005-12-16 16:51:29 av 4ThEleMenT]

Länk till kommentar
Dela på andra webbplatser

Fatal error: Call to undefined function mysql_fetch_arrray() in /var/www/hotserv.dk/users/vic/login2.php on line 16

Jag var nog lite snabb när jag gjorde ändringen, funktionen heter naturligtvis "mysql_fetch_array()" (dvs med två r, inte tre).

 

fick inte det förut när jag tog bort header

Du ska inte ta bort header, du ska ta bort det som gör att header inte fungerar för dig, dvs eventuellt data du skickat till klienten innan raden. Att forumet inte fungerade när du gick vidare manuellt berodde nog just på att du inte gjorde mysql_fetch_array().

 

 

 

Länk till kommentar
Dela på andra webbplatser

du är fan aegd ;) kan du prova att fixa forums.php finns ovan

obs det står fortfarande något om header :'(

 

Warning: Cannot modify header information - headers already sent by (output started at /var/www/hotserv.dk/users/vic/connect.php:7) in /var/www/hotserv.dk/users/vic/login2.php on line 27

[inlägget ändrat 2005-12-16 16:54:34 av 4ThEleMenT]

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...