Gå til innhold

Hjelp med registreringsskjema


Anbefalte innlegg

Hei igjen. Jeg har funnet ut at jeg kan alt for lite php, og trenger derfor hjelp igjen.

 

Jeg trenger et registreringsskjema, der man skriver inn navn og nick (og gjærne en antispam-kode elns).. også blir det listet opp på en side.. (lagres i en txt-fil eller noe lignende hadde vært toppers)...

Kan noen hjelpe meg her?

Lenke til kommentar
Videoannonse
Annonse

Registrering kan jo skje med mySQL og PHP, noe jeg mener er den beste løsningen..

 

<?php
if($_POST['submit']) {

$mysql_host = "localhost"; // mySQL Host eller ip
$mysql_user = "brukernavn"; // mySQL brukernavn
$mysql_pass = "passord"; // mySQL passord
$mysql_db    = "database"; // mySQL database navn
$mysql_tabell = "registrerte_brukere"; // mySQL tabell (trenger ikke endres)
$mysql_link   = mysql_connect ($mysql_host, $mysql_user, $mysql_pass) or die ("ERROR!");
mysql_select_db ($mysql_db) or die ("ERROR!");

$navn = htmlspecialchars(strip_tags($_POST['navn']));
$nick = htmlspecialchars(strip_tags($_POST['nick']));

$mysql_query = "insert into $mysql_tabell set nick='$nick', navn='$navn'";
if(mysql_query($mysql_query)) { echo("Din informasjon ble lagt til i databasen!"); }
else { echo("En feil oppstod, din informasjon ble ikke lagt til i databasen!"); }
}
else {
echo("
<form action=\"\" method=\"post\">
<p>Navn:<br /><input type=\"text\" size=\"40\" name=\"navn\" /></p>
<p>Kallenavn:<br /><input type=\"text\" size=\"40\" name=\"nick\" /></p>
<p><input type=\"submit\" value=\"Legg til i databasen\" name=\"submit\" /></p>
</form>
");
}
?>

 

mySQL spørring du må kjøre via f.eks phpMyAdmin:

CREATE TABLE `registrerte_brukere` (
`id` INT( 5 ) NOT NULL AUTO_INCREMENT ,
`navn` VARCHAR( 120 ) NOT NULL ,
`nick` VARCHAR( 80 ) NOT NULL ,
PRIMARY KEY ( `id` )
)

 

 

Har ikke testet scriptet, men det skal fungere, skrev det på noen minutter nå så det kan være det mangler en ; eller noe sånt, men tror det skal fungere..

Antispam kan legges til, men det blir litt mye å sende på formet..

Det finnes masse av gode scripts som bare kan settes rett inn :)

 

Bare å spørre om du ikke får det til.. :)

Endret av goggen90
Lenke til kommentar

Jeg veit ikke hva jeg skal gjøre... Jeg prøver meg fram på serveren, og hvis jeg ikke får til, sier jeg ifra.

 

 

Edit: jeg er på phpMyAdmin, er pålogget der... Er det det rette stedet og har du noen tutorials om hva jeg skal gjøre?

 

 

Mer edit:

Dette her putter jeg inn i <body>?

<?php
if($_POST['submit']) {

$mysql_host = "localhost"; // mySQL Host eller ip
$mysql_user = "brukernavn"; // mySQL brukernavn
$mysql_pass = "passord"; // mySQL passord
$mysql_db    = "database"; // mySQL database navn
$mysql_tabell = "registrerte_brukere"; // mySQL tabell (trenger ikke endres)
$mysql_link   = mysql_connect ($mysql_host, $mysql_user, $mysql_pass) or die ("ERROR!");
mysql_select_db ($mysql_db) or die ("ERROR!");

$navn = htmlspecialchars(strip_tags($_POST['navn']));
$nick = htmlspecialchars(strip_tags($_POST['nick']));

$mysql_query = "insert into $mysql_tabell set nick='$nick', navn='$navn'";
if(mysql_query($mysql_query)) { echo("Din informasjon ble lagt til i databasen!"); }
else { echo("En feil oppstod, din informasjon ble ikke lagt til i databasen!"); }
}
else {
echo("
<form action=\"\" method=\"post\">
<p>Navn:<br /><input type=\"text\" size=\"40\" name=\"navn\" /></p>
<p>Kallenavn:<br /><input type=\"text\" size=\"40\" name=\"nick\" /></p>
<p><input type=\"submit\" value=\"Legg til i databasen\" name=\"submit\" /></p>
</form>
");
}
?>

 

 

Og dette her putter jeg hvor?

SQLCREATE TABLE `registrerte_brukere` (
`id` INT( 5 ) NOT NULL AUTO_INCREMENT ,
`navn` VARCHAR( 120 ) NOT NULL ,
`nick` VARCHAR( 80 ) NOT NULL ,
PRIMARY KEY ( `id` )
)

Endret av Andy-Pandy
Lenke til kommentar

Jeg sa veldig klart i fra om du leser hva som står over SQL rammen..

 

mySQL spørring du må kjøre via f.eks phpMyAdmin:

CREATE TABLE `registrerte_brukere` (
`id` INT( 5 ) NOT NULL AUTO_INCREMENT ,
`navn` VARCHAR( 120 ) NOT NULL ,
`nick` VARCHAR( 80 ) NOT NULL ,
PRIMARY KEY ( `id` )
)

Lenke til kommentar
Registrering kan jo skje med mySQL og PHP, noe jeg mener er den beste løsningen..

 

<?php
if($_POST['submit']) {

$mysql_host = "localhost"; // mySQL Host eller ip
$mysql_user = "brukernavn"; // mySQL brukernavn
$mysql_pass = "passord"; // mySQL passord
$mysql_db    = "database"; // mySQL database navn
$mysql_tabell = "registrerte_brukere"; // mySQL tabell (trenger ikke endres)
$mysql_link   = mysql_connect ($mysql_host, $mysql_user, $mysql_pass) or die ("ERROR!");
mysql_select_db ($mysql_db) or die ("ERROR!");

$navn = htmlspecialchars(strip_tags($_POST['navn']));
$nick = htmlspecialchars(strip_tags($_POST['nick']));

$mysql_query = "insert into $mysql_tabell set nick='$nick', navn='$navn'";
if(mysql_query($mysql_query)) { echo("Din informasjon ble lagt til i databasen!"); }
else { echo("En feil oppstod, din informasjon ble ikke lagt til i databasen!"); }
}
else {
echo("
<form action=\"\" method=\"post\">
<p>Navn:<br /><input type=\"text\" size=\"40\" name=\"navn\" /></p>
<p>Kallenavn:<br /><input type=\"text\" size=\"40\" name=\"nick\" /></p>
<p><input type=\"submit\" value=\"Legg til i databasen\" name=\"submit\" /></p>
</form>
");
}
?>

7547514[/snapback]

Jeg får opp at det er en feil i Line 2...

Lenke til kommentar

Så var det fler spørsmål.

Jeg får bare error når jeg prøver å poste, og det regner jeg med at er fordi jeg ikke har opprettet tabellen enda?

Hvordan type tabell skal dette være, og hvor mange felter skal det være?

Endret av Hrisebro
Lenke til kommentar

Han sa veldig klart ifra hvis du leser hva som står her...

Jeg sa veldig klart i fra om du leser hva som står over SQL rammen..

 

mySQL spørring du må kjøre via f.eks phpMyAdmin:

CREATE TABLE `registrerte_brukere` (
`id` INT( 5 ) NOT NULL AUTO_INCREMENT ,
`navn` VARCHAR( 120 ) NOT NULL ,
`nick` VARCHAR( 80 ) NOT NULL ,
PRIMARY KEY ( `id` )
)

7548159[/snapback]

 

Bare importer dette i den databasen du opprettet ved hjelp av Phpmyadmin

Lenke til kommentar

<?php
//MySQL connect
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) { die('Could not connect: ' . mysql_error()); }

$sql = "SELECT navn, nick FROM registrerte_brukere";
$query = mysql_query($sql);

while($rad = mysql_fetch_array($query, MYSQL_NUM)) {
$navn = $rad['navn'];
$nick = $rad['nick'];

echo "$navn sitt nick er $nick";
}
mysql_close($link);
?>

 

Utestet, men jeg tror det skal virke.

Endret av Stale2k
Lenke til kommentar
<?php
//MySQL connect
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
  die('Could not connect: ' . mysql_error());

$sql = "SELECT navn, nick FROM registrerte_brukere";
$query = mysql_query($sql);

while($rad = mysql_fetch_array($query, MYSQL_NUM)) {
$navn = $rad['navn'];
$nick  = $rad['nick'];

echo "$navn sitt nick er $nick";
}
mysql_close($link);
?>

 

 

Utestet, men jeg tror det skal virke.

7550842[/snapback]

Får ikke dette til heller jeg.. :(

 

Jeg prøvde å putte det i en ny fil, men da får jeg at det er feil i linje 17 (altså: ?>)

Prøvde også å legge det inn i samme fil, men får opp at det er feil på samme sted.

 

Hjelp? :p

Lenke til kommentar
Var en liten feil der ja.. :blush:

Posten over er oppdatert. :)

7550924[/snapback]

Fortsetter med feil jeg.. :p

 

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in *****\les.php on line 10

 

Altså: while($rad = mysql_fetch_array($query, MYSQL_NUM)) {

Lenke til kommentar

Prøv denne, den fungerer!

Scriptet jeg postet i begynnelsen fungerte, det er kun om du setter det opp feil det ikke fungerer ;)

Har lagt til 2 brukere i databasen min med det nå, og jeg leste de med scriptet under, så alt skal fungere!

 

<?php
$mysql_host = "localhost"; // mySQL Host eller ip
$mysql_user = "brukernavn"; // mySQL brukernavn
$mysql_pass = "passord"; // mySQL passord
$mysql_db    = "database"; // mySQL database navn
$mysql_tabell = "registrerte_brukere"; // mySQL tabell (trenger ikke endres)
$mysql_link   = mysql_connect ($mysql_host, $mysql_user, $mysql_pass) or die ("ERROR!");
mysql_select_db ($mysql_db) or die ("ERROR!");

$sql = "SELECT * FROM $mysql_tabell";
$query = mysql_query($sql);

while($rad = mysql_fetch_array($query)) {
$navn = $rad['navn'];
$nick = $rad['nick'];

echo "
<div style=\"border-bottom: 1px dotted #B0B0B0; border-left: 5px solid #B0B0B0;\">
<b>Navn:</b> $navn - <b>Nick:</b> $nick</div>";
}
?>

Endret av goggen90
Lenke til kommentar
Prøv denne, den fungerer!

Scriptet jeg postet i begynnelsen fungerte, det er kun om du setter det opp feil det ikke fungerer ;)

Har lagt til 2 brukere i databasen min med det nå, og jeg leste de med scriptet under, så alt skal fungere!

 

<?php
$mysql_host = "localhost"; // mySQL Host eller ip
$mysql_user = "brukernavn"; // mySQL brukernavn
$mysql_pass = "passord"; // mySQL passord
$mysql_db    = "database"; // mySQL database navn
$mysql_tabell = "registrerte_brukere"; // mySQL tabell (trenger ikke endres)
$mysql_link   = mysql_connect ($mysql_host, $mysql_user, $mysql_pass) or die ("ERROR!");
mysql_select_db ($mysql_db) or die ("ERROR!");

$sql = "SELECT * FROM $mysql_tabell";
$query = mysql_query($sql);

while($rad = mysql_fetch_array($query)) {
$navn = $rad['navn'];
$nick = $rad['nick'];

echo "
<div style=\"border-bottom: 1px dotted #B0B0B0; border-left: 5px solid #B0B0B0;\">
<b>Navn:</b> $navn - <b>Nick:</b> $nick";
}
?>

7551344[/snapback]

Tusen takk! Det var gennialt :)

Endret av Hrisebro
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...