23. december 2002 - 15:31
Der er
37 kommentarer og 1 løsning
et lille php problem
jeg har følge script som er til en tagwall som skal bruge til et medlen system som jeg har lavet.. men jeg kan ikke få script til at gå ned database og hente den brugenavn som bruge er logge ind med... hvad gør jeg forkert? script:: <? session_start(); ?> <html> <head> <title>tagwall</title> <META NAME="Generator" CONTENT="Stone's WebWriter 3.5"> <LINK REL="stylesheet" HREF="../style.css" TYPE="text/css"> </head> <body> <center> <table><tr><td></td><td width="5"> </td><td><a href="#" onClick="window.open('smileys.php','Smileys','height=300, width=300, menubar=no, toolbar=no, scrollbar=no, adressbar=no')">Smileys</a></td></tr></table> <form action="Tagwall.php" method="post"> <center><table> <tr><td></td><td><input type="hidden" value="<b>Fra:</b> " name="from" class="felt"></td></tr> <tr><td><pre>Navn:</pre></td><td><input name="username" type="text" id="username" value="" class="felt"></td></tr> <tr><td></td><td><input type="hidden" value="<br>" name="br" class="felt"></td></tr> <tr><td></td><td><input type="hidden" value="<b>Besked:</b><br>" name="histxt" class="felt"></td></tr> <tr><td><pre>Besked:</pre></td><td><textarea cols="20" rows="5" class="area" name="besked"></textarea></td></tr> <tr><td><pre>Tekstfarve:</pre></td><td> <select name="color"> <option value="darkred">Mørk rød</option> <option value="darkblue">Mørk blå</option> </select> </td></tr> <tr><td><pre>Skrifttype:</pre></td><td> <select name="skrift"> <option value="Arial">Arial</option> </select> </td></tr> <tr><td></td><td><input type="hidden" value="<hr>" name="hr" class="felt"></td></tr> <tr><td><input type="submit" class="felt" value="Skriv"></td><td><input type="reset" class="felt" value="Slet alt"></td></tr> </table> </form> </center> <? if (trim(strtolower($_POST["username"])) == "admin") { print "Det er ikke tilladt at bruge navnet Admin"; exit; } $file = fopen("./beskeder.txt","a"); function Smilies($str) { $str = ereg_replace("[:]+[)]","<img src=\"glad.gif\">",$str); $str = ereg_replace("[:]+[D]","<img src=\"supergrin.gif\">",$str); $str = ereg_replace("[>]+[)]","<img src=\"devil.gif\">",$str); $str = ereg_replace("[0]+[)]","<img src=\"angel.gif\">",$str); $str = ereg_replace("[:]+[(]","<img src=\"angry.gif\">",$str); $str = ereg_replace("[:]+[P]","<img src=\"latter.gif\">",$str); $str = ereg_replace("[:]+[Q]","<img src=\"pistolmand.gif\">",$str); $str = ereg_replace("[:]+[O]","<img src=\"pokemonball.gif\">",$str); return $str; } $besked = Smilies($besked); fputs($file,"$from $username $frome $br $histxt <font color=$color face=$skrift>$besked</font> $hr"); fclose($file); ?> <hr> <?php include("beskeder.txt"); ?> </body> </html>
Annonceindlæg fra Immeo
23. december 2002 - 17:50
#1
Du vil ikke bruge mySQL til det?
23. december 2002 - 18:30
#2
den skal hente oplysninger om bruge navn i mim mysql database... den tagwall jeg har funde bruge ikke mysql
23. december 2002 - 19:12
#3
Hmm jeg er bange for, jeg ikke helt forstår dit problem. Kan du ikke læse et par artikler om brugersystemer osv på
www.anything.dk eller
www.udvikleren.dk ?
..ellers prøv at uddyb lidt :/
23. december 2002 - 19:19
#4
jeg har lavet mit ejet login system ud fra en tutorials og jeg har funde et tagwall som jeg vil bruge til det.. men jeg skal have tagwall til at gå ned i min database og hente bruges brugenavn frem når person gå ind på tagwall så det bliver hans brugenavn der kommer frem når han skrive
24. december 2002 - 14:05
#5
Hvorfor gemmer du ikke bare brugernavnet i en session er gør som følgende: <input name="username" type="text" id="username" value="<?=$_SESSION['brugernavn'];?>" class="felt">
24. december 2002 - 14:25
#6
har prøve ... virke ikke
24. december 2002 - 14:41
#7
hmm. så har du nok lavet noget forkert, kan man komme til at se koden?
24. december 2002 - 14:48
#8
værså god <? session_start(); include '../db.php'; // Conver to simple variables $username = $_SESSION['username']; ?> <html> <head> <title>tagwall</title> <META NAME="Generator" CONTENT="Stone's WebWriter 3.5"> <LINK REL="stylesheet" HREF="../style.css" TYPE="text/css"> </head> <body> <center> <table><tr><td></td><td width="5"> </td><td><a href="#" onClick="window.open('smileys.php','Smileys','height=300, width=300, menubar=no, toolbar=no, scrollbar=no, adressbar=no')">Smileys</a></td></tr></table> <form action="Tagwall.php" method="post"> <center><table> <tr><td></td><td><input type="hidden" value="<b>Fra:</b> " name="from" class="felt"></td></tr> <tr><td><pre>Navn:</pre></td><td><input name="username" type="text" id="username" value="<?echo $_SESSION['username'];?>" class="felt"></td></tr> <tr><td></td><td><input type="hidden" value="<br>" name="br" class="felt"></td></tr> <tr><td></td><td><input type="hidden" value="<b>Besked:</b><br>" name="histxt" class="felt"></td></tr> <tr><td><pre>Besked:</pre></td><td><textarea cols="20" rows="5" class="area" name="besked"></textarea></td></tr> <tr><td><pre>Tekstfarve:</pre></td><td> <select name="color"> <option value="darkred">Mørk rød</option> <option value="darkblue">Mørk blå</option> </select> </td></tr> <tr><td><pre>Skrifttype:</pre></td><td> <select name="skrift"> <option value="Arial">Arial</option> </select> </td></tr> <tr><td></td><td><input type="hidden" value="<hr>" name="hr" class="felt"></td></tr> <tr><td><input type="submit" class="felt" value="Skriv"></td><td><input type="reset" class="felt" value="Slet alt"></td></tr> </table> </form> </center> <? if (trim(strtolower($_POST["username"])) == "admin") { print "Det er ikke tilladt at bruge navnet Admin"; exit; } $file = fopen("./beskeder.txt","a"); function Smilies($str) { $str = ereg_replace("[:]+[)]","<img src=\"glad.gif\">",$str); $str = ereg_replace("[:]+[D]","<img src=\"supergrin.gif\">",$str); $str = ereg_replace("[>]+[)]","<img src=\"devil.gif\">",$str); $str = ereg_replace("[0]+[)]","<img src=\"angel.gif\">",$str); $str = ereg_replace("[:]+[(]","<img src=\"angry.gif\">",$str); $str = ereg_replace("[:]+[P]","<img src=\"latter.gif\">",$str); $str = ereg_replace("[:]+[Q]","<img src=\"pistolmand.gif\">",$str); $str = ereg_replace("[:]+[O]","<img src=\"pokemonball.gif\">",$str); return $str; } $besked = Smilies($besked); fputs($file,"$from $username $frome $br $histxt <font color=$color face=$skrift>$besked</font> $hr"); fclose($file); ?> <hr> <?php include("beskeder.txt"); ?> </body> </html>
24. december 2002 - 15:07
#9
er du sikker på at informationerne bliver hentet ud i db.php og det nemmeste er jo hvis du laver sessionvariablen username når de logger på. Har du husket at lave sessionvariablen? session_register("username"); $username = $brugernavn;
24. december 2002 - 15:09
#10
for at du kan se hvad det skal bruge til er du nød til at gå ind på
www.anti-bums.dk/login1/join_form.html og så lige skriv dit brugenavn her så jeg kan ændre så du kan se hvad der er glat
24. december 2002 - 15:12
#11
brugernavn stefan
24. december 2002 - 15:13
#12
nu kan du se tagwall
24. december 2002 - 15:16
#13
når folk logger på går jeg ud fra at du laver en session, som fortæller at de er logget på. Her ville jeg samtidig lave følgende: session_register("username"); $username = $brugernavn; hvor $brugernavn er hentet fra databasen.
24. december 2002 - 15:19
#14
Hmm ser ikke ud til at virke
24. december 2002 - 15:22
#15
vis lige koden hvor folk logger på
24. december 2002 - 15:23
#16
login_form.php; <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <LINK REL="stylesheet" HREF="style.css" TYPE="text/css"> <!-- Minus AutoDato --> <title>Login</title> <META NAME="Generator" CONTENT="Stone's WebWriter 3.5"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <form action="checkuser.php" method="post" name="" id=""> <fieldset> <legend>Login</legend> <div> <label for="t1">Brugernavn:</label><input name="username" type="text" id="username" class="t1" /><br /> <label for="t2">Adgang kode:</label><input name="password" type="password" id="password" class="t2" /><br /> </div> </fieldset> <div><input type="submit" name="Submit" value="Submit" id="submit" /></div> </form> </body> </html> checkuser.php; <? /* Check User Script */ session_start(); // Start Session include 'db.php'; // Conver to simple variables $username = $_POST['username']; $password = $_POST['password']; if((!$username) || (!$password)){ echo "Please enter ALL of the information! <br />"; include 'login_form.html'; exit(); } // Convert password to md5 hash $password = md5($password); // check if the user info validates the db $sql = mysql_query("SELECT * FROM medlen_users WHERE username='$username' AND password='$password' AND activated='1'"); $login_check = mysql_num_rows($sql); if($login_check > 0){ while($row = mysql_fetch_array($sql)){ foreach( $row AS $key => $val ){ $$key = stripslashes( $val ); } // Register some session variables! session_register('first_name'); $_SESSION['first_name'] = $first_name; session_register('last_name'); $_SESSION['last_name'] = $last_name; session_register('email_address'); $_SESSION['email_address'] = $email_address; session_register('special_user'); $_SESSION['user_level'] = $user_level; mysql_query("UPDATE medlen_users SET last_login=now() WHERE userid='$userid'"); header("Location: login_success.php"); } } else { echo "You could not be logged in! Either the username and password do not match or you have not validated your membership!<br /> Please try again!<br />"; include 'login_form.html'; } ?>
24. december 2002 - 15:28
#17
Så tilføj følgende efter '// Register some session variables!' session_register('user_name'); $_SESSION['user_name'] = $username; og i tagwall'en skal du så huske at rette den, så den henter $_SESSION['user_name']
24. december 2002 - 15:33
#18
Prøv selv at lige se..
24. december 2002 - 15:37
#19
øhh? Jeg kan jo ikke se sourcekoden... hvis det er det du mener.
24. december 2002 - 15:38
#20
den hente jo ikke ens brugenavn frem
24. december 2002 - 15:40
#21
nej, men det er nok fordi du ikke har lavet sessionvariablen rigtigt. har du gjort som jeg skrev lige før?
24. december 2002 - 15:44
#22
tak.. nu virke det.. svar lige så du kan få de point
24. december 2002 - 15:47
#23
der er lige en lille fejl... hvis du prøve at se så skrive den brugenavnet et sted hvor der ikke skal
24. december 2002 - 15:49
#24
virker det helt nu?
24. december 2002 - 15:51
#25
Hvis jeg skrive: } $besked = Smilies($besked); fputs($file,"$from $username $frome $br $histxt <font color=$color face=$skrift>$besked</font> $hr"); fclose($file); ?> vise ens brugenavn ikke men hvis jeg skrive sådan her: } $besked = Smilies($besked); fputs($file,"$from $user_name $frome $br $histxt <font color=$color face=$skrift>$besked</font> $hr"); fclose($file); ?> vise en brugenavn før man overhovedet har skreve
24. december 2002 - 15:55
#26
ved den nederste er det sessionvariablen som bliver hentet, du kan jo evt. helt fjerne boksen hvor folk selv kan skrive noget i. Men det øverste burde virke!
24. december 2002 - 16:01
#27
du kan jo se at den sætte ens brugenavn ind før man overhovedet har skreve noget
24. december 2002 - 16:06
#28
hvis du bare bruger den nederste kode så skulle det virke!
24. december 2002 - 16:09
#29
det er den jegh bruge... men det virke jo ikke helt
24. december 2002 - 16:13
#30
så ser den da ud til at virke...
24. december 2002 - 16:14
#31
den sætte brugenavnet ind på siden FØR man har skreve noget... den viser det lige så snart du kommer ind
24. december 2002 - 16:18
#32
hvor har du den torturial fra?
24. december 2002 - 16:20
#33
tagwall eller login for tagwall er en jeg har funde på nettet
24. december 2002 - 16:21
#34
færdig lavet...
24. december 2002 - 16:30
#35
hvor, jeg kunne godt tænke mig at læse den?
24. december 2002 - 16:33
#36
det login jeg har kan du finde på phpfreaks.com og tagwall kan du finde på script.dk ved at søge på MiniWall
24. december 2002 - 16:42
#37
thx
13. februar 2003 - 11:51
#38
LUKKET
Vi tilbyder markedets bedste kurser inden for webudvikling