Avatar billede Slettet bruger
16. marts 2007 - 14:54 Der er 22 kommentarer og
1 løsning

php guide

Hej..
Nogen der kender en god side med med php toturials?
Ligsom der var på http://webcafe.dk/ som desvære er lukket.
Har arbejdet med php og mysql før, men da jeg intet har lavet i et halvt år så er det glemt, så en opfriskning mangler.
Avatar billede Slettet bruger
16. marts 2007 - 14:55 #1
Avatar billede Slettet bruger
16. marts 2007 - 16:36 #2
tak for det!..
Har skrevet dette kode-- >
<?php
include("connect.php");
if($_POST['aktiver']){
$users = $POST['users'];
$pass = $POST['pass'];
$fornavn = $POST['fornavn'];
$efternavn = $POST['efternavn'];
$alder = $POST['alder'];
$email = $POST['email'];
$bruger_tjek = mysql_query("SELECT * FROM users WHERE users = '$users'");
if(mysql_num_rows($bruger_tjek)> "0"){
  echo"Brugernavnet er desvære optaget du må hellere vælge et andet";
}else{
$pass = md5($passw);
mysql_query("INSERT * INRO users WHERE
users = '$users',
pass = '$passw',
alder = '$alder',
email = '$email',
fornavn = '$fornavn',
efternavn = '$efternavn'");

echo"Tillykke! Du er nu oprettet og klar til at logge ind!";
}
}

?>




Men når man loader siden skriver
Avatar billede Slettet bruger
16. marts 2007 - 16:37 #3
hov .
Skriver den : 'Tillykke! Du er nu oprettet og klar til at logge ind!

Læg lige mærke til at der er et ' foran!
Avatar billede Slettet bruger
16. marts 2007 - 16:37 #4
hvorfor gør den det?
Avatar billede Slettet bruger
16. marts 2007 - 16:40 #5
Har selvfølig os en html del på samme side
<html>
<head>
<title> Frit-Design </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<form action= "" METHOD="POST">

Brugernavn<br>
<input type="name" name="users"> <br>
Password                        <br>
<input type="password" name="pass"> <br>
Fornavn                              <br>
<input type="name" name="fornavn">    <br>
Efternavn                            <br>
<input type="name" name="efternavn">    <br>
Alder                                      <br>
<input type="name" name="alder">          <br>
Email                                          <br>
<input type="name" name="email">                  <br>
<input type="submit" name="aktiver">                  <br>
</form>
</body>
</html>
Avatar billede michael_stim Ekspert
16. marts 2007 - 16:40 #6
INRO skal nok være INTO
Avatar billede Slettet bruger
16. marts 2007 - 16:41 #7
Argh:)
Avatar billede michael_stim Ekspert
16. marts 2007 - 16:42 #8
Og når du opdaterer hedder det UPDATE tabel SET felt=felt, felt2=felt2 osv.
Avatar billede Slettet bruger
16. marts 2007 - 16:42 #9
Men det hjalp ikke da det blev rettet
Avatar billede Slettet bruger
16. marts 2007 - 16:42 #10
Jeg opdatere jo ikke noget i dette?..
Skal oprette brugeren
Avatar billede michael_stim Ekspert
16. marts 2007 - 16:42 #11
Og INSERT INTO users (felt, felt2) VALUES(felt, felt2)
Avatar billede michael_stim Ekspert
16. marts 2007 - 16:44 #12
Du kan ikke bruge WHERE når du inserter. Du kan ikke lave en ny række hvor et eller andet...
Avatar billede Slettet bruger
16. marts 2007 - 16:46 #13
Nu har jeg denne kode: <?php
include("connect.php");
if($_POST['aktiver']){
$users = $POST['users'];
$pass = $POST['pass'];
$fornavn = $POST['fornavn'];
$efternavn = $POST['efternavn'];
$alder = $POST['alder'];
$email = $POST['email'];
$bruger_tjek = mysql_query("SELECT * FROM users WHERE users = '$users'");
if(mysql_num_rows($bruger_tjek)> "0"){
  echo"Brugernavnet er desvære optaget du må hellere vælge et andet";
}else{
$pass = md5($passw);
mysql_query("INSERT * INTO users (users, pass, alder, email, fornavn, efternavn) VALUES($users, $passw, $alder, $email, $fornavn, $efternavn)");

echo"Tillykke! Du er nu oprettet og klar til at logge ind!";
}
}

?>
<html>
<head>
<title> Frit-Design </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<form action= "" METHOD="POST">

Brugernavn<br>
<input type="name" name="users"> <br>
Password                        <br>
<input type="password" name="pass"> <br>
Fornavn                              <br>
<input type="name" name="fornavn">    <br>
Efternavn                            <br>
<input type="name" name="efternavn">    <br>
Alder                                      <br>
<input type="name" name="alder">          <br>
Email                                          <br>
<input type="name" name="email">                  <br>
<input type="submit" name="aktiver">                  <br>
</form>
</body>
</html>


Som giver samme resultat som før:S
Avatar billede michael_stim Ekspert
16. marts 2007 - 16:49 #14
Husk at sætte " om dine varchars
mysql_query("INSERT * INTO users (users, pass, alder, email, fornavn, efternavn) VALUES('".$users."', '".$passw."', '".$alder."', '".$email."', '".$fornavn."', '".$efternavn."')");
Avatar billede Slettet bruger
16. marts 2007 - 16:52 #15
Det hjælper ikke..
Avatar billede Slettet bruger
16. marts 2007 - 16:53 #16
Men bliver nød til at stoppe nu..
Står for maden i aften;)
er du på i aften/nat?
Avatar billede Bjarne Novice
16. marts 2007 - 17:28 #17
Ja.. Webcafe er desværre lukket, men det skal da ikke forhindre dig i at bruge php-guiderne: http://web.archive.org/web/20050316023833/http://www.webcafe.dk/
Avatar billede Slettet bruger
16. marts 2007 - 17:30 #18
Øj kanont bjarne tak for det.. Har fået lavet lidt kode som du kan se..  men der er nogle fejl..
:


<?php
include("connect.php");
if($_POST['aktiver']){
$users = $POST['users'];
$pass = $POST['pass'];
$fornavn = $POST['fornavn'];
$efternavn = $POST['efternavn'];
$alder = $POST['alder'];
$email = $POST['email'];
$bruger_tjek = mysql_query("SELECT * FROM users WHERE users = '$users'");
if(mysql_num_rows($bruger_tjek)> "0"){
  echo"Brugernavnet er desvære optaget du må hellere vælge et andet";
}else{
$pass = md5($passw);
mysql_query("INSERT * INTO users (users, pass, alder, email, fornavn, efternavn) VALUES('".$users."', '".$passw."', '".$alder."', '".$email."', '".$fornavn."', '".$efternavn."')");

echo"Tillykke! Du er nu oprettet og klar til at logge ind!";
}
}

?>
<html>
<head>
<title> Frit-Design </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<form action= "" METHOD="POST">

Brugernavn<br>
<input type="name" name="users"> <br>
Password                        <br>
<input type="password" name="pass"> <br>
Fornavn                              <br>
<input type="name" name="fornavn">    <br>
Efternavn                            <br>
<input type="name" name="efternavn">    <br>
Alder                                      <br>
<input type="name" name="alder">          <br>
Email                                          <br>
<input type="name" name="email">                  <br>
<input type="submit" name="aktiver">                  <br>
</form>
</body>
</html>



Kan du finde den?.
Den skriver med det samme når man loader sider at man er oprettet , og den tilføjer ikke til mysql.
Avatar billede Slettet bruger
16. marts 2007 - 22:19 #19
Ikke nogen der kan hjælpe nu ?
Avatar billede dkfire Nybegynder
17. marts 2007 - 13:26 #20
if(mysql_num_rows($bruger_tjek)> "0"){

skal nok være

if( mysql_num_rows($bruger_tjek) > 0 ){
Avatar billede dkfire Nybegynder
17. marts 2007 - 13:37 #21
En anden ting, hvorfor kryptere du passwordet, når du ikke ligger det krypterede password i databasen.
$pass = md5($passw);
mysql_query("INSERT * INTO users (users, pass, alder, email, fornavn, efternavn) VALUES('".$users."', '".$passw."', '".$alder."', '".$email."', '".$fornavn."', '".$efternavn."')");

Du skal nok hellere skrive:
$pass = md5($passw);
$result = mysql_query("INSERT INTO users (users, pass, alder, email, fornavn, efternavn) VALUES('$users', '$pass', '$alder', '$email', '$fornavn', '$efternavn')");

I INSERT skal du ikke have noget * tegn.
Og så er det altid en god ide at tjekke som din forespørgelse i mysql er gået godt.
Dette kan gøres ved
if( !$result )
{
echo "Databasefejl";
}elseif( mysql_affected_rows( $result ) == 0 )
{
echo "Der blev ikke indsat noget i databasen";
}else
{
echo "Tillykke...";
}
Avatar billede Slettet bruger
17. marts 2007 - 14:37 #22
Så koden blir:
<?php
include("connect.php");
if($_POST['aktiver']){
$users = $POST['users'];
$pass = $POST['pass'];
$fornavn = $POST['fornavn'];
$efternavn = $POST['efternavn'];
$alder = $POST['alder'];
$email = $POST['email'];
$bruger_tjek = mysql_query("SELECT * FROM users WHERE users = '$users'") or die (mysql_error);
if( mysql_num_rows($bruger_tjek) > 0 ){
  echo"Brugernavnet er desvære optaget du må hellere vælge et andet";
}else{
$pass = md5($passw);
$pass = md5($passw);
$result = mysql_query("INSERT INTO users (users, pass, alder, email, fornavn, efternavn) VALUES('$users', '$pass', '$alder', '$email', '$fornavn', '$efternavn')");
if( !$result )
{
echo "Databasefejl";
}elseif( mysql_affected_rows( $result ) == 0 )
{
echo "Der skete desvære en fejl! Prøv igen";
}else
{
echo "Tillykke! Du er nu oprettet og klar til at logge ind!";
}
}
}


?>


det virker ikke.
Avatar billede Slettet bruger
10. december 2008 - 11:59 #23
lukker
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