Avatar billede webnord Novice
04. maj 2011 - 13:12 Der er 5 kommentarer og
1 løsning

Update

Jeg vil gerne på samme side lave en update af et felt i en  database.

noget lign. dette
<form action="2.php" method="post">
Nyhed: <input type="text" name="nyhed" />
<input type="submit" />
</form>

require("connect.php");
$sql="UPDATE users (Nyhed)

VALUES
('$_POST[nyhed]')";

if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }

Er der en, der lige gidder at skrive den rigtige syntax?

/Falcon
04. maj 2011 - 14:02 #1
Du har en tabel 'users' i mysql databasen med med blandt andet et felt 'Nyhed'.  I formularen inputter du en nyhed.  Saa meget synes klart. 

Saa er jeg ikke klar over om du vil tilfoeje inputtede nyhed til tabellen eller om du vil erstatte en bestaaende nyhed med den inputtede nyhed.  Hvis du vil tilfoeje nyheden, saa kan koden vaere:

$ny = $_POST['nyhed'];
mysql_query("INSERT INTO users(Nyhed) VALUES('$ny')or die(mysql_error())";

...eller om du vil erstatte en nyhed der allerede er i tabellen med den inputtede nyhed.  Din brug af UPDATE tyder derpaa.  Men saa maa du fortaelle hvilken nyhed der skal erstattes.  Hvis tabellen har felterne id og Nyhed og for eksempel disse vaerdier:

id Nyhed
1  Brand i boldgaden
2  Ny dansk hund
3  Klodshans finder sin traesko

og det saa er nyheden med id = 2, altsaa Ny dansk hund du vil have erstattet med din nye inputtede nyhed, saa er du noedt til i din form at have et felt for id'en, for eksempel saaledes:

<form action="2.php" method="post">
ID: <input type="text" name = "id" />
Nyhed: <input type="text" name="nyhed" />
<input type="submit" />
</form>

og saa bliver din update kode saaledes:

$id = $_POST['id']
$ny = $_POST['nyhed'];
mysql_query("UPDATE users SET Nyhed = '$ny' WHERE id = '$id'");
Avatar billede danco Nybegynder
04. maj 2011 - 15:05 #2
Som Christian allerede skriver er den korrekte syntax for UPDATE følgende:

UPDATE tabelnavn SET kolonne navn = ny værdi WHERE primær nøgle=et ID
Avatar billede webnord Novice
04. maj 2011 - 16:25 #3
Jeg har lavet flg.:

require("connect.php");

mysql_query("UPDATE users SET overskrift='".$_POST['overskrift']."',nyhed='".$_POST['nyhed']."' WHERE id='2'");

og det virker ok

Tak for inspirationen
Avatar billede danco Nybegynder
04. maj 2011 - 16:33 #4
Men dit ID er ikke dynamisk nu, så du kan kun opdatere hvor ID= 2

Og hvorfor vælger du at tage point selv når du har fået hjælp?
Avatar billede danco Nybegynder
04. maj 2011 - 16:35 #5
Undskyld, glem det sidste af min post, jeg var vidst hurtigere på tasterne end mine øjne kunne følge med.
Avatar billede webnord Novice
04. maj 2011 - 17:14 #6
:)
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

IT-JOB

Capgemini Danmark A/S

Management Consultant

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Chef til stor applikationstransformation i Forsvaret

Netcompany A/S

IT Manager