Avatar billede Maylind Nybegynder
21. januar 2010 - 08:03 Der er 44 kommentarer og
1 løsning

hvordan kan det være den ikke opretter?

hvordan kan det være den ikke opretter mine nye produkter ind i min databasen. den går videre til siden produkter, men der sker bare intet.

//Her kan man oprette et nyt produkt.
function opretprodukt($conn){
    if(isset($_POST['ok'])){
        $pro = $_POST['produkt'];
        $beskrivelse = $_POST['beskrivelse'];
        $pris = $_POST['pris'];
        $billede = $_POST['billede'];
        mysqli_query($conn,"insert into produkter (produkt,beskrivelse,pris,image) values (".$pro.",'".$beskrivelse."','".$pris."','".$billede."')");
        header("location:?page=produkter");
    };
    ?>
    <form method="post" action="?page=opretprodukt" name="opret">
        Produkt:<br />
        <input type="text" name="produkt" value="" /><br />
        Beskrivelse:<br />
        <textarea name="tekst"></textarea><br />
        Pris:<br />
        <input type="text" name="pris" value="" /><br />
        Billede:<br />
        <input type="text" name="billede" value="" /><br />
        <input type="submit" name="ok" value="Opret" />
    </form>
    <?php
};
Avatar billede michael_stim Ekspert
21. januar 2010 - 08:12 #1
1. Prøv at sætte en "or die...." på efter din query.
2. Der skal ikke ; efter }
Avatar billede michael_stim Ekspert
21. januar 2010 - 08:14 #2
3. Har du husket at afslutte din php-tag til sidst?
Avatar billede Maylind Nybegynder
21. januar 2010 - 08:29 #3
hmm det vil den slet ikke, den kommer bare med en pass error, ligemeget hvad jeg gør.

Jep PHP er afsluttet
Avatar billede Maylind Nybegynder
21. januar 2010 - 08:37 #4
hmm det vil den slet ikke, den kommer bare med en pass error, ligemeget hvad jeg gør.

Jep PHP er afsluttet
Avatar billede Maylind Nybegynder
21. januar 2010 - 09:03 #5
hmm det vil den slet ikke, den kommer bare med en pass error, ligemeget hvad jeg gør.

Jep PHP er afsluttet
Avatar billede erikjacobsen Ekspert
21. januar 2010 - 09:04 #6
Har du prøvet som foreslået:

      mysqli_query($conn,"insert into produkter (produkt,beskrivelse,pris,image) values (".$pro.",'".$beskrivelse."','".$pris."','".$billede."')") or die(mysql_error());
Avatar billede Maylind Nybegynder
21. januar 2010 - 09:16 #7
Så giver den denne fejl.
Avatar billede Maylind Nybegynder
21. januar 2010 - 09:18 #8
Notice: Undefined index: beskrivelse in C:\Users\Mai\Documents\My Dropbox\www\GadgetHouse\include\functionad.php on line 43
Avatar billede erikjacobsen Ekspert
21. januar 2010 - 09:48 #9
Det har så ikke noget med SQL at gøre, men har du et felt, der hedder beskrivelse?
Avatar billede Maylind Nybegynder
21. januar 2010 - 10:02 #10
Ja det har jeg
Avatar billede erikjacobsen Ekspert
21. januar 2010 - 10:06 #11
Ok - jeg mente et felt i din <form>
Avatar billede michael_stim Ekspert
21. januar 2010 - 10:24 #12
Som Erik er inde på, så hedder dit text area "tekst" og ikke "beskrivelse".
Avatar billede Maylind Nybegynder
21. januar 2010 - 10:52 #13
det er rettet ne, men der sker stadig intet
Avatar billede erikjacobsen Ekspert
21. januar 2010 - 10:59 #14
Hvordan ser din kode ud nu - og hvorledes skal vi forstå: "der sker stadig intet"?
Avatar billede michael_stim Ekspert
21. januar 2010 - 11:00 #15
OK maylind, lidt hjælp til selvhjælp. Vi kan af forklarlige grunde ikke se hvad der sker, så lidt mere kød på benene tak. Hvad sker der? Hvad sker der ikke? osv. Prøv at udskrive din sql i stedet for at eksekvere den.
Avatar billede Maylind Nybegynder
21. januar 2010 - 11:02 #16
Hvad mener du???

Er ret ny med det her
Avatar billede michael_stim Ekspert
21. januar 2010 - 11:06 #17
$sql=,"insert into produkter (produkt,beskrivelse,pris,image) values (".$pro.",'".$beskrivelse."','".$pris."','".$billede."')";
//mysqli_query($conn, $sql);
echo $sql;
Avatar billede michael_stim Ekspert
21. januar 2010 - 11:07 #18
Og som Erik siger (igen) #14
Avatar billede Maylind Nybegynder
21. januar 2010 - 11:14 #19
Min kode ser sådan ud

//Her henter jeg mine produkter ud fra databasen.   
function produkter($conn){
    $sql = mysqli_query($conn,"select * from produkter");
   
    while($produkt=mysqli_fetch_array($sql)){

    echo $produkt['produkt']."<br />";
    echo $produkt['beskrivelse']."<br />";
    echo $produkt['pris']."<br />";
    echo "<a href='?page=produkter'>Slet produkt</a><hr noshade='noshade' />";
    echo "<a href='?page=opretprodukt'>Opret ny</a><hr noshade='noshade' />";
    };
if(isset($_POST['slet produkt'])){
    mysqli_query($conn,"delete * from produkter");
    header("location:?page=produkter");
    };
};



//---------------------------------------------------------------------------------------------------
//Her kan man oprette et nyt produkt.
function opretprodukt($conn){
    if(isset($_POST['opret'])){
        $strpro = $_POST['produkt'];
        $strbeskriv =@$_POST['beskrivelse'];
        $intpris = $_POST['pris'];
        $strimage = @$_POST['images'];
        header("location:?page=produkter");
       
        $sql="insert into produkter (produkt,beskrivelse,pris,images) values (".$strpro.",'".$strbeskriv."','".$intpris."','".$strimage."')";
//mysqli_query($conn, $sql);
echo $sql;
    };
    ?>
    <form method="post" action="?page=produkter" name="opret">
        Produkt:<br />
        <input type="text" name="produkt" value="" /><br />
        Beskrivelse:<br />
        <textarea name="beskrivelse" name="beskrivelse"></textarea><br />
        Pris:<br />
        <input type="text" name="pris" value="" /><br />
        Billede:<br />
        <input type="text" name="images" value="" /><br />
        <input type="submit" name="ok" value="Opret" />
    </form>
    <?php
};

//---------------------------------------------------------------------------------------------------
//Her kan man redigere i sine produkter
function retprodukt($conn,$pid){
    if(isset($_POST['ok'])){
        $pro = $_POST['produkt'];
        $beskrivelse = $_POST['beskrivelse'];
        $pris = $_POST['pris'];
        $billede = $_POST['billede'];
        mysqli_query($conn,"update produkter set produkt=".$pro.", beskrivelse='".$beskrivelse."', pris='".$pris."', images='".$billede."' where pid=".$pid."");
    };
    $sql = mysqli_query($conn,"select * from produkter,undermenu where undermenu.uid=produkter.pkid and produkter.pid=".$pid."");
    $produkt = mysqli_fetch_array($sql);
    $sqlK = mysqli_query($conn,"select * from undermenu where uid <> ".$produkt['pkid']."");


//Her laver jeg formularen til at redigere i produkter.
?>
<form method="post" action="?page=retprodukt&pid=<?php echo $pid;?>" name="rediger">
                Type:<br /> <select name="type">
                    <option selected value="<?php echo $produkt['pkid']?>"><?php echo $produkt['menuer'];?></option>
<?php
    while($kat=mysqli_fetch_array($sqlK)){
    echo "<option value='".$kat['uid']."'>".$kat['menuer']."</option>";
    };
?>
</select><br />
Pris:<br />
    <input type="text" name="pris" value="" /><br />
Beskrivelse:<br />
    <textarea name="tekst"></textarea><br />
Billede:<br />
    <input type="text" name="billede" value="" /><br />
    <input type="submit" name="ok" value="Rediger" />
</form>
<?php         
};

//---------------------------------------------------------------------------------------------------
//Her kan man slette et produkt
function sletprodukt($conn,$pid){
    mysqli_query($conn,"delete from produkter where pid=".$pid."");
    header("location:?page=produkter");
};
Avatar billede michael_stim Ekspert
21. januar 2010 - 11:18 #20
Du skal stadig ikke have ; efter dine }
Avatar billede erikjacobsen Ekspert
21. januar 2010 - 11:30 #21
Vi har tidliger påpeget at du siger

$_POST['beskrivelse'];

men har

Beskrivelse:<br />
    <textarea name="tekst"></textarea><br />
Avatar billede Maylind Nybegynder
21. januar 2010 - 12:51 #22
hvad skal jeg gøre i stedet? forstår jeg ikke helt
Avatar billede Maylind Nybegynder
21. januar 2010 - 13:00 #23
Min formular ser sådan ud nu

  <form method="post" action="?page=produkter" name="opret">
        Produkt:<br />
        <input type="text" name="produkt" value="" /><br />
        Beskrivelse:<br />
        <textarea name="beskrivelse"></textarea><br />
        Pris:<br />
        <input type="text" name="pris" value="" /><br />
        Billede:<br />
        <input type="text" name="images" value="" /><br />
        <input type="submit" name="ok" value="Opret" />
    </form>
Avatar billede erikjacobsen Ekspert
21. januar 2010 - 15:15 #24
Ja - hvad sker der så nu?

Og hvor kommer forøvrigt $_POST['billede'] fra?
Avatar billede Maylind Nybegynder
21. januar 2010 - 15:23 #25
der sker bare det at de indtastede produkter ikk kommer ind i databasen.

Jamen den lavede jeg om til images istedet
Avatar billede erikjacobsen Ekspert
21. januar 2010 - 15:43 #26
Koden du viser i #19 skal heller ikke indsætte noget, men udskrive en SQL-sætning, så du kan se om det virker. Jeg er usikker på hvordan din kode, der håndterer indsættelse, egentlig ser ud nu.
Avatar billede Maylind Nybegynder
21. januar 2010 - 15:46 #27
koden

//Her kan man oprette et nyt produkt.
function opretprodukt($conn){
//Formularen til at oprette et produkt i
?>
    <form method="post" action="?page=produkter" name="opret">
        Produkt:<br />
        <input type="text" name="produkt" value="" /><br />
        Beskrivelse:<br />
        <textarea name="beskrivelse"></textarea><br />
        Pris:<br />
        <input type="text" name="pris" value="" /><br />
        Billede:<br />
        <input type="text" name="images" value="" /><br />
        <input type="submit" name="ok" value="Opret" />
    </form>
   
<?php
if(isset($_POST['ok'])){
        $strpro =($_POST['produkt']);
        $strbeskriv =($_POST['beskrivelse']);
        $intpris =($_POST['pris']);
        $strimage =($_POST['images']);
        header("location:?page=produkter");
     
        $strSQL="insert into produkter (produkt,beskrivelse,pris,images) values (".$strpro.",'".$strbeskriv."','".$intpris."','".$strimage."')";
        mysqli_query($conn,$strSQL);
        echo $strSQL;
    };

};

Her er min index kode, som forbinder mine functions. ved ikke om det kan hjælpe.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>gadgethouse</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="include/style.css"/>

<?php
session_start();
if(!isset($_SESSION['access'])){
    header("location:admin.php");
};

include('include/dbconnect.php');
include('include/functionad.php');

if(isset($_GET['page'])){
    $page = $_GET['page'];
}else{
    $page = "index";
};
?>

</head>
<body class="center_page">

<div id="Table_01">
    <div id="Slice-01_">
   
    </div>
    <div id="Slice-02_">
    <div class="menu">
    <?php
        menu1();
    ?>
    </div>
    </div>
    <div id="Slice-03_">
       
    </div>
    <div id="Slice-04_" class="undermenu">
        <?php
            switch($page){
                    default;
                    index($conn);
                    break;
                case "index";
                    index($conn);
                    break;
                case "produkter";
                    produkter($conn);
                    break;
                case "opretprodukt";
                    opretprodukt($conn);
                    break;
                case "retprodukt";
                    retprodukt($conn,$pid);
                    break;
                case "sletprodukt";
                    sletprodukt($conn,$pid);
                    break;
                case "kunder";
                    kunder($conn);
                    break;
                case "adlogud";
                    adlogud();
                    break;
                case "undermenu";
                    undermenu($conn);
                    break;
                case "meta";
                    meta();
                    break;
               
            };
        ?>
Avatar billede michael_stim Ekspert
21. januar 2010 - 15:51 #28
maylind: Læser du overhovedet hvad vi skriver? #1 og #20

Erik: Tager hatten af for din tålmodighed (ikke bare i dette spørgsmål, men også i mange andre). Du er den fødte lærer ;o)
Avatar billede Maylind Nybegynder
21. januar 2010 - 16:13 #29
ja selvfølgelig læser jeg, men da jeg ikke har meget kenskab til php, er det svært at forstå det i skriver
Avatar billede michael_stim Ekspert
21. januar 2010 - 16:20 #30
Man behøver ikke at have kunskab til PHP for at forstå det Erik og jeg skriver.

Der skal ikke ; (semikolon) efter dine } (tuborgklammer).
Avatar billede Maylind Nybegynder
21. januar 2010 - 16:32 #31
Jamen for det første er det det vi lærer i skolen og for det andet har det virket me ; i alle mine andre scrips
Avatar billede michael_stim Ekspert
21. januar 2010 - 16:43 #32
Jamen så har din lærer lært jer noget forkert. Og PHP script fungerer ikke hvis man skriver noget forkert. Der kommer bare en hvid side hvis error messages ikke er slået til.
Avatar billede Maylind Nybegynder
21. januar 2010 - 16:46 #33
efter mine functions skal jeg da slutte med };
Avatar billede Maylind Nybegynder
21. januar 2010 - 16:56 #34
Hvis jeg bruger denne

    $sql="insert into produkter (produkt,beskrivelse,pris,image) values (".$pro.",'".$beskrivelse."','".$pris."','".$billede."')";
//mysqli_query($conn, $sql);
echo $sql;};

for jeg denne fejl udskrevet

Notice: Undefined index: beskrivelse in C:\Users\Mai\Documents\My Dropbox\www\GadgetHouse\include\functionad.php on line 53 insert into produkter (produkt,beskrivelse,pris,image) values (zxcv,'','4','szdxf')
Avatar billede Maylind Nybegynder
21. januar 2010 - 16:59 #35
Hvis jeg bruger denne

    $sql="insert into produkter (produkt,beskrivelse,pris,image) values (".$pro.",'".$beskrivelse."','".$pris."','".$billede."')";
//mysqli_query($conn, $sql);
echo $sql;};

for jeg denne fejl udskrevet

Notice: Undefined index: beskrivelse in C:\Users\Mai\Documents\My Dropbox\www\GadgetHouse\include\functionad.php on line 53 insert into produkter (produkt,beskrivelse,pris,image) values (zxcv,'','4','szdxf')
Avatar billede Maylind Nybegynder
21. januar 2010 - 17:05 #36
Hvis jeg bruger denne

    $sql="insert into produkter (produkt,beskrivelse,pris,image) values (".$pro.",'".$beskrivelse."','".$pris."','".$billede."')";
//mysqli_query($conn, $sql);
echo $sql;};

for jeg denne fejl udskrevet

Notice: Undefined index: beskrivelse in C:\Users\Mai\Documents\My Dropbox\www\GadgetHouse\include\functionad.php on line 53 insert into produkter (produkt,beskrivelse,pris,image) values (zxcv,'','4','szdxf')
Avatar billede Maylind Nybegynder
21. januar 2010 - 17:08 #37
Hvis jeg bruger denne

    $sql="insert into produkter (produkt,beskrivelse,pris,image) values (".$pro.",'".$beskrivelse."','".$pris."','".$billede."')";
//mysqli_query($conn, $sql);
echo $sql;};

for jeg denne fejl udskrevet

Notice: Undefined index: beskrivelse in C:\Users\Mai\Documents\My Dropbox\www\GadgetHouse\include\functionad.php on line 53 insert into produkter (produkt,beskrivelse,pris,image) values (zxcv,'','4','szdxf')
Avatar billede erikjacobsen Ekspert
21. januar 2010 - 17:10 #38
Hvis dit textarea hedder "beskrivelse" bør du ikke kunne få den fejl-besked.

Er produkt en streng i tabellen i databasen, skal der '....' rundt om værdien. Men er den et tal, må du da vist ikke skrive "zxcv"
Avatar billede Maylind Nybegynder
21. januar 2010 - 17:18 #39
det er en streng. og mit felt hedder beskrivelse.
Avatar billede Maylind Nybegynder
21. januar 2010 - 17:21 #40
det er en streng. og mit felt hedder beskrivelse.
Avatar billede Maylind Nybegynder
21. januar 2010 - 17:31 #41
det er en streng. og mit felt hedder beskrivelse.
Avatar billede Maylind Nybegynder
21. januar 2010 - 17:52 #42
Nu har jeg prøvet dette


//Her kan man oprette et nyt produkt.
function opretprodukt($conn){
    if(isset($_POST['ok'])){
        $pro = $_POST['produkt'];
        $beskrivelse = $_POST['beskrivelse'];
        $pris = $_POST['pris'];
        $billede = $_POST['billede'];
      $sql="insert into produkter (produkt,beskrivelse,pris,image) values (".$pro.",'".$beskrivelse."','".$pris."','".$billede."')";
//mysqli_query($conn, $sql);
echo $pro,$beskrivelse,$pris,$billede;};
    ?>
    <form method="post" action="?page=produkter" name="opret">
        Produkt:<br />
        <input type="text" name="produkt" value="" /><br />
        Beskrivelse:<br />
        <textarea name="beskrivelse"></textarea><br />
        Pris:<br />
        <input type="teskt" name="pris" value="" /><br />
        Billede:<br />
        <input type="text" name="billede" value="" /><br />
        <input type="submit" name="ok" value="Opret" />
    </form>
    <?php
};

Og bliver dette udskrevet på min opretprodukt

rtgfhsedrgtf4563sdfghg

//hvilket er det jeg udfyldte i formularen
Avatar billede Maylind Nybegynder
21. januar 2010 - 21:36 #43
er der nogen
Avatar billede Maylind Nybegynder
21. januar 2010 - 22:53 #44
lukker
Avatar billede erikjacobsen Ekspert
23. januar 2010 - 19:17 #45
Ja, vi er her. Men du skal være meget mere præcis med hvilken kode du, og hvad den gør eller ikke gør. Ellers kan vi, eller jeg i det mindste, ikke gøre andet end gætte.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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