v5.dk logo
Kom ind og besøg vores Discord Chat-community
Bliv medlem her eller læs mere om Discord her
1 stor kaffe i byen eller 1 hel md.
som Premium-medlem, valget er dit! :-)

Mere info Køb nu

Premium på v5.dk
v5.dk logo  v5.dk e-learning
Log på med Facebook
  • Log ind på v5.dk
  • Opret bruger
  • Log ind
  • v5.dk Premium
  • v5.dk Premium
  • Hvad siger vores kunder?
  • E-læring for begyndere
  • icon for WordPress 4 e-learning WordPress 4
  • icon for Office 365 e-learning Office 365
  • icon for Microsoft Word e-learning Microsoft Word
  • Bloggen for alle
  • E-læring for nørder
  • icon for PHP-programmering e-learning PHP-programmering
  • icon for iOS Programmering e-learning iOS Programmering
  • icon for Linux Server e-learning Linux Server
  • Bloggen for nørder
  • Arkiverede videoer
  • Fællesskab
  • Forum
  • Idéer og ønsker
  • Markedspladsen
  • v5.dk Premium
  • Gratis webhotel
  • Cloud-servere
  • Om v5.dk
  • Søg på v5.dk
  • Om v5.dk ApS
    • Om virksomheden
    • RSS-feeds og tjenester
    • Driftsmeddelelser
    • Presse-kit
    • Ledige jobs
    • Social Netværk
      • Facebook
      • Twitter
      • Instagram
    • Alt det andet
      • Forretningsbetingelser
      • Ophavsret og Copyright
  • Kontakt kundeservice
  • FAQ og Hjælp
    • Premium og abb.
    • Videoer og Afspiller
    • Forum og Points
    • Cloud-servers
  • Partner/Virksomhed
  • Partner-kanal
v5.dk logo mobile
  • Menu
  • Opret bruger

Kan ikke styre opret post og ret post - funktionen update overskriver alle records

  • v5.dk
  • Forum
  • PHP-programmering
  • Kan ikke styre opret post og ret post - funktionen update overskriver alle records
  • Sidevisninger: 3460 har set dette indlæg
Besvar #0Spørgsmål oprettet af @Wendel | 5700 points
30 points ude 3 indlæg 7 år siden Spørgsmålet er ikke løst
avatar
 

Jeg har det problem, at når jeg bruger ret-post, så opdatere funktionen alle id linier i databasen. Men når jeg bruger opret-post fungere funktionen som den skal og oprettet en post mere i databasen. Hvorfor overskriver min ret-post alle poster i databasen? Jeg smider lige koden med op herunder.

<!--Denne fil er opret-post.php-->
<?php include("../app.php");
$app = new minAwesomeApp;

if(!isset($_POST['navn']) || empty($_POST['navn'])){header("Location: opret.php?fejl=1"); die; }
if(!isset($_POST['adresse']) || empty($_POST['adresse'])){header("Location: opret.php?fejl=2"); die; }
if(!isset($_POST['postby']) || empty($_POST['postby'])){header("Location: opret.php?fejl=3"); die; }
if(!isset($_POST['telefon1']) || empty($_POST['telefon1'])){header("Location: opret.php?fejl=4"); die; }
if(!isset($_POST['telefon2']) || empty($_POST['telefon2'])){header("Location: opret.php?fejl=5"); die; }
if(!isset($_POST['email1']) || empty($_POST['email1'])){header("Location: opret.php?fejl=6"); die; }
if(!isset($_POST['email2']) || empty($_POST['email2'])){header("Location: opret.php?fejl=7"); die; }
if(!isset($_POST['foedt']) || empty($_POST['foedt'])){header("Location: opret.php?fejl=8"); die; }
if(!isset($_POST['tekst']) || empty($_POST['tekst'])){header("Location: opret.php?fejl=9"); die; }

// Indsætte data i vores database.
// DatabaseInsert( "medlemsliste", array('Navn','Email'), array('Daniel','[email protected]') )
$app->DatabaseInsert(
"medlemsliste",
array('navn','adresse','postby','telefon1','telefon2','email1','email2','foedt','tekst'),
array($_POST['navn'], $_POST['adresse'], $_POST['postby'], $_POST['telefon1'], $_POST['telefon2'], $_POST['email1'], $_POST['email2'], $_POST['foedt'], $_POST['tekst'])
);

header("Location: ../Medlemsliste/index.php");
die;
?>

<!--Denne fil er ret-post.php-->
<?php include("../app.php");
$app = new minAwesomeApp;

if(!isset($_POST['navn']) || empty($_POST['navn'])){header("Location: /Medlemsliste/ret.php?fejl=1" . "&ID=" . $_POST['ID']); die; }


if(!isset($_POST['adresse']) || empty($_POST['adresse'])){header("Location: /Medlemsliste/ret.php?fejl=2" . "&ID=" . $_POST['ID']); die; }

if(!isset($_POST['postby']) || empty($_POST['postby'])){header("Location: /Medlemsliste/ret.php?fejl=3" . "&ID=" . $_POST['ID']); die; }

if(!isset($_POST['telefon1']) || empty($_POST['telefon1'])){header("Location: /Medlemsliste/ret.php?fejl=4" . "&ID=" . $_POST['ID']); die; }

if(!isset($_POST['telefon2']) || empty($_POST['telefon2'])){header("Location: /Medlemsliste/ret.php?fejl=5" . "&ID=" . $_POST['ID']); die; }

if(!isset($_POST['email1']) || empty($_POST['email1'])){header("Location: /Medlemsliste/ret.php?fejl=6" . "&ID=" . $_POST['ID']); die; }

if(!isset($_POST['email2']) || empty($_POST['email2'])){header("Location: /Medlemsliste/ret.php?fejl=7" . "&ID=" . $_POST['ID']); die; }

if(!isset($_POST['foedt']) || empty($_POST['foedt'])){header("Location: /Medlemsliste/ret.php?fejl=8" . "&ID=" . $_POST['ID']); die; }

if(!isset($_POST['tekst']) || empty($_POST['tekst'])){header("Location: /Medlemsliste/ret.php?fejl=9" . "&ID=" . $_POST['ID']); die; }

if(!isset($_POST['ID']) || empty($_POST['ID'])){header("Location: /Medlemsliste/ret.php?fejl=9" . "&ID=" . $_POST['ID']); die; }

// Opdater noget i vores database
// DatabaseUpdate( "Medlemsliste", array('email'), array('[email protected]', 1), "WHERE id = ?" )
$app->DatabaseUpdate(
"medlemsliste",
array('navn','adresse','postby','telefon1','telefon2','email1','email2','foedt','tekst'),
array($_POST['navn'], $_POST['adresse'], $_POST['postby'], $_POST['telefon1'], $_POST['telefon2'], $_POST['email1'], $_POST['email2'], $_POST['foedt'], $_POST['tekst'])
);

header("Location: ../Medlemsliste/vis.php?ID=" . $_POST['ID']);
die;
?>

 

avatar
 
Besvar#1 @db Admin kommenterede for 7 år siden

Hej  Wendel @Wendel   

Tusinde tak for dit spørgmål, lad os se om vi ikke kan hjælpe dig videre. 

Først, her er et lille tip til at indsætte kode på v5.dk. Når man indsætter kode vha "Indsæt code"-knappen, er det lidt nemmere for andre læse. Se tippet her: https://v5.dk/knowledgebase/32.html

Og så til svaret på dit spørgsmål, det ligner at du har misset en lille ting i dit $app->DatabaseUpdate kald, nemlig hvilken række der skal opdateres. Når man ikke specificere en bestemt række, vil alle rækker blive opdateret, som du oplever.

Så derfor skal din DatabaseUpdate ændres til at indeholde et WHERE-statement. Jeg har lavet et eksempel her:

$app->DatabaseUpdate(
"medlemsliste",

array('navn','adresse','postby','telefon1','telefon2','email1','email2','foedt','tekst'),

array($_POST['navn'], $_POST['adresse'], $_POST['postby'], $_POST['telefon1'], $_POST['telefon2'], $_POST['email1'], $_POST['email2'], $_POST['foedt'], $_POST['tekst'], $_POST['ID']),
	
"WHERE id = ?"

);

Her har jeg indsat et ekstra parameter i vores DatabaseUpdate-kald, nemlig "WHERE id = ?" til sidst. Ydermere har jeg i dit nr. 2 array indsat $_POST['ID'] til sidst.

Bemærk at PHP er case sensative, hvilket betyder at den tager højde for forskellen på store og små bogstaver, så hvis dit id-felt i databasen hedder ID, skal det naturligvis stå på samme måde. Det samme gælder $_POST['ID'].

Håber dette hjælper dig lidt videre, jeg glæder mig til at høre om resultatet.

God onsdag.


Med venlige hilsner

Daniel Bahls Signatur   Daniel Bahl (@db)
   CEO – v5.dk ApS

avatar
 
Besvar#2 @Wendel kommenterede for 7 år siden

Hej db @db   Tak for dit praj på hvor jeg havde dummet mig. Nu kører det på min localhost. Der var så lige et par andre småting der skulle rettes ind. Jeg skal nok kikke på dit tip om hvordan man sætter kode ind.

Hilsen Carsten

avatar
 
Besvar#3 @db Admin kommenterede for 6 år siden

Skønt at høre du fik det hele til at spille  God dag  Wendel @Wendel   


Med venlige hilsner

Daniel Bahls Signatur   Daniel Bahl (@db)
   CEO – v5.dk ApS

avatar
 

Du er ikke logget ind

Du skal være logget ind på v5.dk før du kan benytte vores forum. Det er ganske gratis at oprette en bruger.

Opret en ny gratis bruger Log ind

Følger med i denne tråd

Wendel db

Forum kategorier

  • Generelt
  • Guides & Howto85
  • Offtopic / Andet160
  • Microsoft Office
  • Microsoft Word13
  • Microsoft Excel4
  • Microsoft PowerPoint0
  • Web og hjemmesider
  • Wordpress17
  • Operativsystemer
  • Apple Mac OS X14
  • Apple iOS28
  • Microsoft Windows4
  • Linux16
  • Teknologier
  • Netværk og WiFi3
  • Internet-tjenester9
  • Programmering
  • PHP-programmering125
  • iPhone-/Xcode-programmering9

Aktive forum-tråde lige nu

pentobarbital kaufen ohne rezept
gras kaufen online - grasthc.com
online marketing
Køb juridiske dokumenter såsom kørekort, pas, visum, opholdstilladelse og andre dokumenter
Køb juridiske dokumenter såsom kørekort, pas, visum, opholdstilladelse og andre dokumenter
Weed online kaufen
Er det værd at have en "portfolio"-hjemmeside!?
Fejlkode i form af bip-lyde ved opstart af gammel stationær PC
Bygget med af v5.dk
© Copyright 2006-2023 • Forretningsbetingelser • Copyright • Persondata- og Cookiepolitik
v5.dk ApS - Åbogade 15 - 8200 Aarhus N - CVR: 36902833
v5.dk logo
Hej, vi hedder v5.dk og vi laver e-learning på dansk

v5.dk er sat i verden for at gøre teknologi tilgængeligt og anvendeligt for både professionelle og almindelige brugere på alle niveauer.

93 200 555
  Skriv til os
v5.dk bruger cookies til at huske dine indstillinger, livechat samt til statistik
 

Alle vores priser er inkl. moms Sikker SSL-beskyttet forbindelse

Dankort og Visa-Dankort  Visa  Mastercard og Mastercard Junior  Maestro

  • Produkter
  • v5.dk Premium
  • Cloud-servers
  • v5.dk
  • Om v5.dk
  • Kunderne siger
  • Kontakt os
  • Presse
  • Stay updated
  • RSS & tjenester
  • Søg på v5.dk
  • Sitemap