Avatar billede jepsen83 Nybegynder
05. december 2003 - 16:44 Der er 10 kommentarer og
1 løsning

insert i mysql

Hejsa

Er der nogen som kan hjælpe mig med dette script? Jeg kan ikke få sciptet til at sende oplysningerne op i mysql databasen.




<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!--*********************************************-->
<html>
<head>
<title>Opret</title>
</head>
<body bgcolor="gray">
<?php 
//*********************************************
// Set up database connection:
$dbserver = mysql_connect("mette.andersenit.dk","390mudwebdk","Password");
if ($dbserver==FALSE)
{  die("ingen forbindelse ved database: " . mysql_error());
}
$dbselected = mysql_select_db("390mudwebdk", $dbserver);
if ($dbselected==FALSE)
{  die("Could not connect to the database: " . mysql_error());
}

$tilstand = $_GET['tilstand'];
if($tilstand == "")

{
echo "
            <form action=$PHP_SELF method=\"POST\">
            indtast dit brugernavn <input type=\"text\" name=\"Brugernavn\"><br/>
            indtast password <input type=\"password\"/ name=\"Password\"><br/>
            indtast password igen <input type=\"password\"/ name=\"Password_rep\"><br/>
            indtast dit fornavn <input type=\"text\" name=\"Fornavn\"><br/>
            indtast dit efternavn <input type=\"text\" name=\"Efternavn\"><br/>
            indtast din adresse <input type=\"text\" name=\"Adresse\"><br/>
            indtast dit telefonnummer <input type=\"text\" name=\"Telefon\"><br/>
            indtast dit Email <input type=\"text\" name=\"Email\"><br/>
                        <input type=\"submit\" value=\"Opret mig\" /><br/>
                        <input type=\"hidden\" name=\"tilstand\" value=\"1\" />
            </form>
";
}


else if($tilstand == "udfyldt")


{
  $Brugernavn = $_GET['Brugernavn'];
    $Password = $_GET['Password'];
    $Password_rep = $_GET['Password_rep'];
    $Fornavn = $_GET['Fornavn'];
    $Efternavn = $_GET['Efternavn'];
    $Adresse = $_GET['Adresse'];
    $Telefon = $_GET['Telefon'];
    $Email = $_GET['Email'];
   
   

    $sqlcommand = "INSERT INTO bruger VALUES ('Brugernavn' , 'Password' , 'Fornavn' , 'Efternavn' , 'Adresse' , 'Telefon ' , 'Email')";
$result = mysql_query($sqlcommand);
if ($result==TRUE)
{  $out .= "The new member has been registered!";
}
else
{  $errorreport = mysql_error();
    $out .= "An error occurred: " . $errorreport;
}
}



?>
</body>
</html>
Avatar billede inglenook Praktikant
05. december 2003 - 16:55 #1
proev:

$sqlcommand = "INSERT INTO bruger VALUES ('" & $Brugernavn & "' , '" & $Password & "' , '" & $Fornavn & "' , '" & $Efternavn & "' , '" & $Adresse & "' , '" & $Telefon & "' , '" & $Email & "')";
Avatar billede krydset Nybegynder
05. december 2003 - 16:55 #2
hvad får du af fejl
Avatar billede jepsen83 Nybegynder
05. december 2003 - 16:59 #3
Det virker ikke....der er ingen forskel!
Jeg får ikke rigtigt nogen fejl, når jeg udfylder formen og trykker send, så tømmer den bare kasserne for tekst. Aner ikke hvor jeg skal se efter fejlen henne?
Avatar billede thb Nybegynder
05. december 2003 - 20:12 #4
Prøv at ændre $PHP_SELF til $_SERVER['PHP_SELF']
altså oppe i action i din form...

Thomas
Avatar billede detox Nybegynder
06. december 2003 - 03:13 #5
Du skal bruge $_POST istedet for $_GET, når du sætter action til 'post i din form. Og så var der et par andre småfejl. Prøv:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!--*********************************************-->
<html>
<head>
<title>Opret</title>
</head>
<body bgcolor="gray">
<?php 
//*********************************************
// Set up database connection:
$dbserver = mysql_connect("mette.andersenit.dk","390mudwebdk","Password") or die("ingen forbindelse ved database: " . mysql_error());
$dbselected = mysql_select_db("390mudwebdk", $dbserver) or die("Could not connect to the database: " . mysql_error());

if(!isset($_POST['tilstand']))
{
echo "
            <form action='".$_SERVER['PHP_SELF']."' method=\"POST\">
            indtast dit brugernavn <input type=\"text\" name=\"Brugernavn\"><br/>
            indtast password <input type=\"password\"/ name=\"Password\"><br/>
            indtast password igen <input type=\"password\"/ name=\"Password_rep\"><br/>
            indtast dit fornavn <input type=\"text\" name=\"Fornavn\"><br/>
            indtast dit efternavn <input type=\"text\" name=\"Efternavn\"><br/>
            indtast din adresse <input type=\"text\" name=\"Adresse\"><br/>
            indtast dit telefonnummer <input type=\"text\" name=\"Telefon\"><br/>
            indtast dit Email <input type=\"text\" name=\"Email\"><br/>
            <input type=\"submit\" value=\"Opret mig\" /><br/>
            <input type=\"hidden\" name=\"tilstand\" value=\"1\" />
            </form>
";
}
elseif($_POST['tilstand'] == 1) {
  $Brugernavn = $_POST['Brugernavn'];
    $Password = $_POST['Password'];
    $Password_rep = $_POST['Password_rep'];
    $Fornavn = $_POST['Fornavn'];
    $Efternavn = $_POST['Efternavn'];
    $Adresse = $_POST['Adresse'];
    $Telefon = $_POST['Telefon'];
    $Email = $_POST['Email'];
  $sqlcommand = "INSERT INTO bruger VALUES ('$Brugernavn' , '$Password' , '$Fornavn' , '$Efternavn' , '$Adresse' , '$Telefon ' , '$Email')";

  $result = mysql_query($sqlcommand) or die(mysql_error());
  if ($result==TRUE)
    {  $out .= "The new member has been registered!";
  } else {
    $errorreport = mysql_error();
    $out .= "An error occurred: " . $errorreport;
  }
echo $out;
}
?>
</body>
</html>
Avatar billede jepsen83 Nybegynder
06. december 2003 - 12:48 #6
/detox

Nu har jeg sat det rettede script ind og jeg tror vi nærmer os. Nu kommer den med følgende felj, når formen er udfyldt og jeg trykker send:

Column count doesn't match value count at row 1

Hvordan skal det tolkes?
Avatar billede detox Nybegynder
06. december 2003 - 13:00 #7
Det betyder at antallet af kolonner i din tabel er forskellig fra antallet af værdier i din forespørgsel. Måske har du en 'id' eller lign.?
Avatar billede jepsen83 Nybegynder
06. december 2003 - 13:06 #8
ja, jeg har en der hedder brugerID og kunstner ID, men de skal jo ikke udfyldes af brugeren
Avatar billede detox Nybegynder
06. december 2003 - 13:09 #9
Så skal du nok lave det i den her stil (ret selv navnene til det korrekte):

$sqlcommand = "INSERT INTO bruger (Brugernavn, Password, Fornavn, Efternavn, Adresse, Telefon, Email) VALUES ('$Brugernavn' , '$Password' , '$Fornavn' , '$Efternavn' , '$Adresse' , '$Telefon' , '$Email')";
Avatar billede jepsen83 Nybegynder
06. december 2003 - 13:12 #10
DET VIRKER!!!!! TAK TAK:-)
Avatar billede detox Nybegynder
06. december 2003 - 13:13 #11
Velbekommen c",)
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