webForumDet fria alternativet
Logga in / Bli medlem

Aktiv?

PHP

30 svar · 533 visningar · startad av streetrobban · sida 2 av 2

Trådstarten, av streetrobban

Jag håller på lite med en egen community (försöker lära mig bara) och har kommit fram till inloggningen. Det är ju så att man endast ska kunna komma åt vissa sidor när man är inloggad. Hur ska jag lösa det? Lägga in ett "active" fält i databasen som ändras från 0 till 1 när man loggar in? Eller en session som ändras man loggar in? För det är väl lite svårt att kolla vad "active" i databasen har

Läs hela trådstarten →
Medlem sedan mars 20007 896 inlägg
#21

Då blir det ju jobbigt att ändra på varje undersida om man ska ändra något!

Just därför ska du använda templates - du arbetar då endast med en eller ett par HTML-filer som fylls med information från diverse PHP-dokument. Sök här på forumet efter templates, så kommer du hitta intressanta länkar och diskussioner. :)

Medlem sedan jan. 20011 140 inlägg
#22

Tjenare! Sitter fortfarande och kodar. Har stött på lite problem, den skriver ut samma sak ("Här var det tomt.") hur jag än gör, varför det?

	<?php
	include("includes/connection.php");
	
	// Skriv ut på sidan
	$catch = mysql_db_query("rob","SELECT * FROM users WHERE uUsername = '$UserName'");
	
	$uPresentation2 = '$uPresentation';
	
	if (uPresentation2 == '') {
	while($get = mysql_fetch_array($catch)) {
	echo("<span class=topic><b>".$get['uUsername']."</b></span><br><br>");
	echo("<span class=date>Blev medlem ".$get['uDateJoin'].".</span><br>");
	echo("<span class=date>Ändrade senast sin presentation ".$get['uDateLast'].".</span><br>");
	echo("<span class=date>Har besökt sin Robbie ".$get['uVisits']." gånger.</span><br><br>");
	echo("".$get['uUsername']." är en ".$get['uSex']." som kommer ifrån ".$get['uPlace'].", ".$get['uCountry'].".<br><br>");
	echo("<table border=0 bgcolor=#E3F4F5 width=100% height=50% cellspacing=5 cellpadding=5><tr><td valign=top>");
	echo("Här var det tomt.");
	echo("</tr></td></table>");
	}
	} else {
	while($get = mysql_fetch_array($catch)) {
	echo("<span class=topic><b>".$get['uUsername']."</b></span><br><br>");
	echo("<span class=date>Blev medlem ".$get['uDateJoin'].".</span><br>");
	echo("<span class=date>Ändrade senast sin presentation ".$get['uDateLast'].".</span><br>");
	echo("<span class=date>Har besökt sin Robbie ".$get['uVisits']." gånger.</span><br><br>");
	echo("".$get['uUsername']." är en ".$get['uSex']." som kommer ifrån ".$get['uPlace'].", ".$get['uCountry'].".<br><br>");
	echo("<table border=0 bgcolor=#E3F4F5 width=100% height=50% cellspacing=5 cellpadding=5><tr><td valign=top>");
	echo("".$get['uPresentation']."");
	echo("</tr></td></table>");
	}
	}
	

	// Stäng databasen
	mysql_close($db);
	?>
Medlem sedan mars 20007 896 inlägg
#23

Ta bort raden:

$uPresentation2 = '$uPresentation';

Och ändra if-satsen till:

if ( mysql_result ( $catch, "uPresentation" ) == "" ) {
Medlem sedan jan. 20011 140 inlägg
#24

Men då skriver den inte ut något alls om "uPresentation" är tom :(

Medlem sedan mars 20007 896 inlägg
#25

Skumt, ändra if-satsen till:

if ( $uPresentation == "" ) {
...

Du hade missat en $.

Medlem sedan jan. 20011 140 inlägg
#26

Den skriver "Här var det tomt." hela tiden! :(

Medlem sedan mars 20007 896 inlägg
#27

Varifrån kommer $uPresentation? Är det ett fält i databasen? Då är det inte så konstigt.

Medlem sedan jan. 20011 140 inlägg
#28

Ja, uPresentation är ett fält i databasen... Men <input> lådan heter också uPresentation.

Medlem sedan mars 20007 896 inlägg
#29

Skickas inte uPresentation som info till PHP-dokumentet så borde din kod se ut så här:

<?php
include("includes/connection.php");
	
$catch = mysql_db_query("rob","SELECT * FROM users WHERE uUsername = '$UserName'");

if ( mysql_num_rows ( $catch ) < 1 ) {
     echo "Du hittades inte i databasen";
     exit;
}

$userRow = mysql_fetch_array ( $catch );
	
echo "<span class=topic><b>" . $userRow[ 'uUsername' ] . "</b></span><br><br>";
echo "<span class=date>Blev medlem " . $userRow[ 'uDateJoin' ] . ".</span><br>";
echo "<span class=date>Ändrade senast sin presentation " . $userRow[ 'uDateLast' ] . ".</span><br>";
echo "<span class=date>Har besökt sin Robbie " . $userRow[ 'uVisits' ] . " gånger.</span><br><br>";
echo $userRow[ 'uUsername' ] . " är en " . $userRow[ 'uSex' ] . " som kommer ifrån " . $userRow[ 'uPlace' ] . ", " . $userRow[ 'uCountry' ] . ".<br><br>";
echo "<table border=0 bgcolor=#E3F4F5 width=100% height=50% cellspacing=5 cellpadding=5><tr><td valign=top>";

if ( $userRow[ 'uPresentation' ] == "" ) {
     echo "Här var det tomt.";
}
else {
     echo $userRow[ 'uPresentation' ];
}

echo "</tr></td></table>";

mysql_close($db);
?>
Medlem sedan jan. 20011 140 inlägg
#30

Hehe! :birp Så klart det funkar! Tackar så mycket, nu måste jag bara sätta mig ner och försöka fundera ut vad all kod gör. Så jag lär mig något av det också :)

Medlem sedan mars 20007 896 inlägg
#31

Tja, det är din egen kod - jag kortade bara ner den lite i stort sett. La in en kontroll så att användaren verkligen finns. :)

273 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)