Avatar billede tobrukDk Novice
05. juli 2012 - 15:26 Der er 17 kommentarer og
1 løsning

søg mulighed til ny side.

Det er sådan at jeg udearbejder lige nu og her en søg mulighed lille system som skal gøre at hvis jeg f.eks få Fisk frem så skal den sende mig hen til den side. men hvis jeg vælg gris så skal den sende mig hen til den side, men jeg er lid usikker på hvordan jeg skal gøre det sådan helt.

hvordan skal jeg bygge op de eller skal jeg lave en form ind i database som skal hedde "link" så f.eks.

på value="stå link her"

Fisk så har den id 1 og gris har id 2

Håber du kan se hvad jeg mener eller ligne ellers skal du bare spørger mig og håber du kan hjælp mig !.

det her er mit forslag til det

<form method="post">
                          <select name="kategori" class="søg">
                              <?php
                                  if ($stmt = $mysqli->prepare('SELECT `id`,`navn` FROM `sog_kategori`')) {
                                $stmt->execute();
                                $stmt->bind_result($id, $navn);
                                while ($stmt->fetch()) {
                                ?>
                                <option value="<?php echo $id;?>"><?php echo $navn;?></option>
                                <?php
                                }
                                $stmt->close();
                                } else {
                                    echo 'Der opstod en fejl i erklæringen: ' . $mysqli->error;
                                }
                            ?>
                        </select>
                            <input type="submit" value="Søg" class="css3button">
                      </form>


inteeeL har forslag det her til mig


<form method="post" action="#">
    <select name="kategori" id="kat" class="søg">
    <?php
    if ($stmt = $mysqli->prepare('SELECT `id`,`navn` FROM `sog_kategori`')) {
        $stmt->execute();
        $stmt->bind_result($id, $navn);
        while ($stmt->fetch()) {
    ?>
            <option value="<?php echo $id;?>"><?php echo $navn;?></option>
    <?php
        }
        $stmt->close();
        } else {
            echo 'Der opstod en fejl i erklæringen: ' . $mysqli->error;
        }
    ?>
    </select>
    <input type="submit" value="Søg" class="css3button" onclick="location = 'kategorier.php?id=' + document.getElementById('kat').value">
</form>


Der er der fejl der kommer intet til at ske overhovedet..
Avatar billede majbom Novice
06. juli 2012 - 21:33 #1
du vil have at når man vælger noget i en select-box, så bliver man sendt til den side?
Avatar billede Temp_dk Nybegynder
07. juli 2012 - 18:02 #2
Prøv følgende script, du skal dog rette $link til det variabel navn du benytter i dit mysqli_connect() kald

<?php
function sog_kategori()
{
    if ($stmt = $mysqli->prepare('SELECT `id`,`navn` FROM `sog_kategori`'))
    {
        $stmt->execute();
        $stmt->bind_result($id, $navn);
        while ($stmt->fetch())
        {
            $array[$id] = $navn;
        }
        return $array;

        $stmt->close();
                die;
    }
    else
    {
        echo 'Der opstod en fejl i erklæringen: ' . $mysqli->error;
    }
}


function hent_katagori($id)
{
    if ($stmt = $con->prepare("SELECT 'id`,`navn` FROM `sog_kategori` WHERE `id` = ?"))
    {
        $stmt->bind_param('i', mysqli_real_escape_string($id,$link));
        $stmt->execute();
        $stmt->bind_result($id, $navn);
        $stmt->fetch();
        $stmt->close();
    }
}

/*
* Der er ikke søgt så vis form
*/
if(!isset($_POST['submit']))
{
?>

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
    <select name="kategori" class="søg">
    <?php
    $ar = sog_kategori();
    foreach($ar as $key => $value)
    {
        echo '<option value="'.$key.'">'.$value.'</option>';
    }
    ?>
    </select> <input type="submit" value="Søg" class="css3button">
</form>
<?php
}
else
{
    echo hent_katagori($_POST['kategori']);
}
?>


Hvis navn er navnet på den side du vil vise skal du bytte
{
    echo hent_katagori($_POST['kategori']);
}
ud med
{
    $navn = hent_katagori($_POST['kategori']);
        header("Location: $navn");
}
Avatar billede tobrukDk Novice
09. juli 2012 - 02:53 #3
#1 ja det vil jeg gerne have så man gøre det letter for bruger at komme der hen hvis man kan sig det sådan der :)
Avatar billede Temp_dk Nybegynder
09. juli 2012 - 07:56 #4
Spørgsmål
Hvilke oplysninger gemmer du i tabellen sog_kategori
Avatar billede tobrukDk Novice
09. juli 2012 - 13:55 #5
hvilken kategori kunden/bruger er i. :) altså den samarbejder samme med en anden database :)
Avatar billede Temp_dk Nybegynder
09. juli 2012 - 14:17 #6
Når bruger har valgt katagori vil du så at det er den "katagori" som vises for brugeren.
Avatar billede tobrukDk Novice
09. juli 2012 - 19:29 #7
Altså det jeg mener f.eks hvis jeg opret mig på blabla.dk så tag jeg  f.eks. "model" (selvom jeg ikke er det), og godkendt mig osv.. så hvis folk kig på forside og søge efter altså klik på det "model" så komme jeg frem. du må spørger hvis der er noget som du ikke forstår :) håber du forstår det :)
Avatar billede tobrukDk Novice
09. juli 2012 - 19:33 #8
#2 kan du ikke sæt kode i box altså sådan at det ser lidt pæner ude for lige nu ser det meget uoverskue lige ud.. sorry håber ikke det hård ord eller ling. :)
Avatar billede Temp_dk Nybegynder
09. juli 2012 - 19:50 #9
Er det rigtigt forstået at hvis jeg klikker på kategori "model" så ønsker du at siden "så komme jeg frem" bliver vist for brugeren?

I så fald er "så komme jeg frem" en html side eller et udtræk fra databasen ?
Avatar billede tobrukDk Novice
09. juli 2012 - 22:19 #10
ja brugeren kommer frem og det bliver taget fra databasen :)
Avatar billede tobrukDk Novice
09. juli 2012 - 22:20 #11
sådan her skal det se ude hvis jeg bare skal have sendt brugeren hen til siden lige så snart at han taget model og klikker på søg så bliver han sendt der her?


<?php
function sog_kategori()
{
    if ($stmt = $mysqli->prepare('SELECT `id`,`navn` FROM `sog_kategori`'))
    {
        $stmt->execute();
        $stmt->bind_result($id, $navn);
        while ($stmt->fetch())
        {
            $array[$id] = $navn;
        }
        return $array;

        $stmt->close();
                die;
    }
    else
    {
        echo 'Der opstod en fejl i erklæringen: ' . $mysqli->error;
    }
}


function hent_katagori($id)
{
    if ($stmt = $con->prepare("SELECT 'id`,`navn` FROM `sog_kategori` WHERE `id` = ?"))
    {
        $stmt->bind_param('i', mysqli_real_escape_string($id,$link));
        $stmt->execute();
        $stmt->bind_result($id, $navn);
        $stmt->fetch();
        $stmt->close();
    }
}

/*
* Der er ikke søgt så vis form
*/
if(!isset($_POST['submit']))
{
?>

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
    <select name="kategori" class="søg">
    <?php
    $ar = sog_kategori();
    foreach($ar as $key => $value)
    {
        echo '<option value="'.$key.'">'.$value.'</option>';
    }
    ?>
    </select> <input type="submit" value="Søg" class="css3button">
</form>
<?php
}
else
{
    echo hent_katagori($_POST['kategori']);
}
?>


er det rigtigt forstået eller hvad?
Avatar billede Temp_dk Nybegynder
09. juli 2012 - 22:23 #12
Hvad kommer der til at stå ved

echo hent_katagori($_POST['kategori'])
Avatar billede Temp_dk Nybegynder
09. juli 2012 - 22:45 #13
Er indholdet i hent_katagori($_POST['kategori']) en henvisning til den side du vil sende til brugeren?
eller er det det du vil sende til brugeren ?
Avatar billede tobrukDk Novice
09. juli 2012 - 23:17 #14
altså brugeren skal blive sendt til http://www.blabla./model/1/ så viser den alle bruger da model er kategori i. og hvis brugeren tag musik så er det sådan http://www.blabla./musik/2/
Avatar billede Temp_dk Nybegynder
09. juli 2012 - 23:36 #15
Er der en index.html eller index.php i disse URL

http://www.blabla./model/1/

http://www.blabla./musik/2/
Avatar billede tobrukDk Novice
10. juli 2012 - 00:55 #16
det er php side hvor jeg har gøre det til pæn i .htacces eller hvordan man staver til det
Avatar billede Temp_dk Nybegynder
10. juli 2012 - 12:49 #17
Hvad er navnet ?
Avatar billede Temp_dk Nybegynder
10. juli 2012 - 13:31 #18
Er det noget i den her stil?
Opret disse 4 filer på din webserver og prøv.

fil: eksempel.html
<!DOCTYPE html>
<html><head><meta content="text/html; charset=utf-8" http-equiv="content-type"><title>eksempel</title></head><body>
<form method="post" action="eksempel.php" name="eksempel"><br>
Vælg katagori
  <select name="eksempel">
  <option value="0">Vælg en katagori</option>
  <option value="1">Biler</option>
  <option value="2">Møbler</option>
  </select>
  <input name="next" value="Fortsæt" type="submit"><br>
</form>
</body></html>


fil: eksempel.php
<?php
$valg = $_POST['eksempel'];
/* Fjern denne linje når find_katagori($valg) virker
$kat = find_katagori($valg)
header("Location: $kat");
?>
Fjern denne og alt under når funktion find_katagori($valg) er oprettet og virker
*/
// dette er kun for at få eksempel til at virke
switch ($valg)
{
    case 1:  // biler
        $kat = "biler.php";
        header("Location: $kat");
        die;
    case 2:  // biler
        $kat = "moebler.php";
        header("Location: $kat");
        die;
    default :
        header("Location: eksempel.html");
        die;
}
?>

fil: biler.php
<?php
echo "Dette er katagori 1 biler";
?>

fil: moebler.php
<?php
echo "Dette er katagori 2 møbler";
?>
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