Avatar billede bgjensen Nybegynder
08. marts 2003 - 13:04 Der er 3 kommentarer og
1 løsning

Hente data fra SQL ved tryk på en knap.

Jeg har en database med mine film i. Jeg har så en udlåns side, hvor man registrer hvilket id nr, og titel der er udlånt. Kan man lave en kanp ved siden af id nr som når man trykker på den, connecter til databasen og henter titel informationen???
her er scriptet som det ser ud nu:

<?
function hentdata() {
$db = mysql_connect($config["db_host"],$config["db_user"],$config["db_pass"]);
    mysql_select_db($config["db_name"],$db);

    mysql_query("SELECT titel FROM dvds WHERE id='$idnr' LIMIT 1");
} ?>

ID Nr: <input type=text name=idnr size=3>
<button onClick="hentdata();">Hent</button><br>
Titel: <input type=text name=titel value="<? echo $mysql_query; ?>"><br>

Så istedet for selv at skrive titel, skal man kun indtaste id nr og trykke hent, og så skriver den selv titlen.
Avatar billede schaefner Juniormester
08. marts 2003 - 14:04 #1
Du kan vel lave den sådan her:

<?
if (isset($_POST['send'])) {
        $idnr = $_POST['idnr'];
    $db = mysql_connect($config["db_host"],$config["db_user"],$config["db_pass"]);
    mysql_select_db($config["db_name"],$db);
    $query = mysql_query("SELECT * FROM dvds WHERE id=$idnr");
    $row = mysql_fetch_array($query);
}
?>

<form method="post" action="" style="display: inline">
ID Nr: <input type="text" name="idnr" size="3"> <input type="submit" name="send" value="Hent"><br>
Titel: <input type=text name=titel value="<?= $row[titel]; ?>"><br>
</form>
Avatar billede bgjensen Nybegynder
08. marts 2003 - 15:19 #2
jo det virker fint, men det er meningen at man også skal kunne update databasen med denne side, så jeg tænkte noget i stil med:

<html>
<title>Film</title>
<link rel="stylesheet" href="style.css" type="text/css" />
<body>

<?
include("menu.php");
include("config.php");

if (isset($_POST['send'])) {
    $idnr = $_POST['idnr'];
    $db = mysql_connect($config["db_host"],$config["db_user"],$config["db_pass"]);
    mysql_select_db($config["db_name"],$db);
    $query = mysql_query("SELECT id, titel FROM dvds WHERE id=$idnr");
    $row = mysql_fetch_array($query);
}

if (isset($_POST['ud'])) {
    $idnr = $_POST['idnr'];
    $titel = $_POST['titel'];
    $til = $_POST['til'];
    $dato = $_POST['dato'];
    $db = mysql_connect($config["db_host"],$config["db_user"],$config["db_pass"]);
    mysql_select_db($config["db_name"],$db);
    mysql_query("INSERT INTO udlaan (id_nr, titel, til, dato) VALUES ('$idnr', '$titel', '$til', '$dato')");
}
?>

<form method="post" action="" style="display: inline">
ID Nr: <input type="text" name="idnr" value="<?= $row[0]; ?>" size="4"> <input type="submit" name="send" value="Hent"><br>
Titel: <input type=text name=titel value="<?= $row[1]; ?>"><br>
Til: <input type=text name=til"><br>
Dato: <input type=text name=dato value="<? echo date ("Y m d"); ?>">
<input type=submit name=ud value=Udlån>

</form>

<? include("bund.php"); ?>

</body>
</html>

Det virker med at indtaste id, og trykke hent, som kommer title frem, men hvis man så indtaster noget i til feltet og datoen, og trykker på udlån, er det kun id og titel som bliver indsat i databasen, hvorfor kommer til og dato ikke med???
Avatar billede bgjensen Nybegynder
08. marts 2003 - 15:35 #3
Uhh, til kom ikke med fordi der var et " for meget:
Til: <input type=text name=til"><br>
skulle selvfølgelig være:
Til: <input type=text name=til><br>
Men datoen komme stadigvæk ikke med???
Avatar billede bgjensen Nybegynder
08. marts 2003 - 15:37 #4
min fejl igen så er der tjek på det:
Tak for hjælpen schaefner.
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