Avatar billede lopus Novice
21. februar 2016 - 19:23 Der er 13 kommentarer

Hjælp til advanceret menu database. :-)

Efter opfordring i en tidligere tråd søger jeg her hjælp til programmering af en funktion til indskrivning af madplan, via hjemmeside.

Forstiller mig en funktion, hvor ejeren af hjemmesiden efter login, kan indtaste madretter en måned frem.

´Gerne med forløbne datoer, så der ikke opstår dobbeltgængere.
og med mulighed at se listen løbende og at slette en menu linje.

for mig virker det helt uoverskueligt, så jeg ved ikke hvad der er rimeligt at spørger om, og der er absolut ingen der skal føle sig forpligtet, pga. denne tråd :-)
Avatar billede claes57 Ekspert
21. februar 2016 - 20:08 #1
noget som
ejer: navn, brugerid, adgangskode (krypteret)
ret: id, navn, opskrift
kalender: år, md, brugerid, id
dag: månedsdag, kalender_id, ret_id

så kan den enkelte person have sin egen opskriftsamling og sætte dem på kalender/dag efter behov/ønske.

opskrift kan selvfølgelig opdeles i enkeltvarer, så man kan søge på fx 'hakket oksekød' og 'pasta' og så få de opskrifter man kan lave og kender med det indhold.
Avatar billede jakobdo Ekspert
21. februar 2016 - 20:21 #2
Ganske utestet...
Burde virke med den "tabel" du fik i sidste tråd: http://www.filedropper.com/plsemanden
Avatar billede lopus Novice
21. februar 2016 - 20:59 #3
Hej Claes57

Tak for dit svar.. Jeg mangler en specifik løsning på at indtaste noget så simpelt som en madret, altså ikke opskrifter med indhold.

Det skal bruges på en lokal pølsevogns hjemmeside, så kunderne kan se hva dagens ret er, og pølsemanden uden computer erfaring selv kan indtaste retter.


Til Jakob

Jeg kan ikke rigtig få edit.php´en til at virke.
Går ud fra jeg blot tilretter mine servere og koder, og oploader de 3 php´er til serveren.  - den melder fejl efter login, og ved edit.

Eller er jeg helt galt på den ?

Du kan følge med her:

http://www.treldevejensgrill.dk/login.php
http://www.treldevejensgrill.dk/edit.php
Avatar billede claes57 Ekspert
21. februar 2016 - 21:10 #4
Et billede er mere end tusinde ord. Gør som fx mcd. Tag billede af hotdog, grillet pølse osv. Giv dem hver et navn, og evt lidt kort tekst (indeholder hvidløg eller lign advarsler, evt glutenfri). Det er det hele - husk priser.
Avatar billede jakobdo Ekspert
21. februar 2016 - 21:40 #5
Fejl nummer 1. :)

<form action="post" method="login.php">
Det skal være:

<form action="login.php" method="post">
Avatar billede lopus Novice
21. februar 2016 - 22:01 #6
Nu er jeg nået til a edit, føre mig til login siden.

Der var en stavefejl :-p

Men efter login, går det galt igen. - 404 Not found
Avatar billede jakobdo Ekspert
21. februar 2016 - 22:16 #7
Igen utestet, men prøv denne som new.php

<?php
session_start();
if(!$_SESSION['logged_in']}){
  header('Location: login.php');
  exit();
}

$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if ($mysqli->connect_errno) {
  printf("Connect failed: %s\n", $mysqli->connect_error);
  exit();
}

if(isset($_POST['new'])){
  if ($stmt = $mysqli->prepare("INSERT INTO dagensret (id, dato, tekst) VALUES (null, ?, ?)")) {
    $stmt->bind_param("ss", $_POST['dato'], $_POST['tekst']);
    $stmt->execute();
    $stmt->close();
  }
}

echo '<form action="new.php" method="post">';
echo 'Dato: <input type="date" name="dato">';
echo 'Tekst: <input type="text" name="tekst"><br>';
echo '<input type="submit" name="new" value="Gem">';
echo '</form>';

?>

Det er ment som den der opretter en ny ret default.
Man kunne overveje og bruge DATO som primary key og skippe ID
Avatar billede lopus Novice
22. februar 2016 - 21:52 #8
Jeg er ked af det, men jeg kan ikke rigtig komme videre efter login..


Jeg benytter http://sandbox.onlinephpfunctions.com/ til at finde småfejle m.v. og prøver at tilrette..

jeg fjerner et } før login delen virker.

if(!$_SESSION['logged_in']}){
if(!$_SESSION['logged_in']){

længere kommer jeg ikke med min viden.
Avatar billede lopus Novice
22. februar 2016 - 21:59 #9
Hej igen..

Den henviser til samme login.php som sidst.. hvor jeg går istå.

Er det login.php den er galt med, burde man ikke sendes tilbage til new.php. eller før edit.php ?
Avatar billede olsensweb.dk Ekspert
22. februar 2016 - 22:31 #10
>Er det login.php den er galt med,
i den du har liggende online Ja, men den fejl har jakobdo gjort opmærksom på i #5

>burde man ikke sendes tilbage til new.php. eller før edit.php ?
nej, du har jo ikke noget header location, ved logon succesfuld, hvor skulle den også vide fra hvor du kommer fra.
du kunne have started med bare at klikke på logon.php, hvor skulle den så sende dig hen ?? edit eller new ??

så du må først logge ind
og derefter klikke på new.php eller edit.php
tilgengæld kunne man godt skrive en besked om man er logger ind i login.php, så man ved man kan starte en af de andre filer op der kræver man er logget ind

nu ved jeg godt det er et meget simpelt eks, men man burde have trukket database connection ud i en seperat fil, så man ikke skal vedligeholde settings flere steder.

hurtig tilretning af login.php
 
<?php
session_start();

//Hemmelig kode
$secret = 'xxxxx';

if(isset($_POST['login'])){
  if($_POST['secret'] == $secret){
    $_SESSION['logged_in'] = true;
    echo "du er nu logget ind";
  }
}
?>
<form action="login.php" method="post">
Kode: <input type="password" name="secret" placeholder="Indtast kodeord"><br>
<input type="submit" name="login" value="Login">
</form>
Avatar billede jakobdo Ekspert
23. februar 2016 - 12:22 #11
Avatar billede lopus Novice
23. februar 2016 - 20:54 #12
Neeej hvor fedt..!

Det er det jo, så skal jeg bare have det langt op på min side.

Jeg har desværre ikke tid til at rode med det de næste par dage, men jeg vender tilbage når det køre på siden.

Tusinde tak..

Nu må du se om ikke du kan finde vej til pølsevognen ;-9
Avatar billede jakobdo Ekspert
23. februar 2016 - 22:21 #13
Jeg overvejer at starte bilen op, bare for en eller 2 gratis hotdogs. :o)
Men turen frem og tilbage over storebælt æder sgu nok lidt af ideen.
Jeg skal dog nok kigge forbi en dag.
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

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