28. januar 2009 - 18:08Der er
12 kommentarer og 1 løsning
Redigere i databasen
Hejsa. Jeg er for kort tid siden begyndt at rode med php. Og jeg har nu besluttet mig at jeg vil prøve at lave et nyheds system (tilføj, læs, rediger, slet). Det er indtil videre lykkedes mig at få lavet tilføj, læs og slet funktion, men jeg har bare ikke den mindste anelse om hvordan jeg gør det muligt at redigere nyheden. Er der nogen der gider hjælpe mig lidt igang så jeg har en ide om hvordan det skal gøres? :)
Slet-delen: ----------------- Nu skal du så tænke om du vil SLETTE posterne HELT.. eller om du bare vil have et felt der hedder "show" og så sætte den til "yes" hvis den skal vises eller "nej" hvis den skal skjules (hvis I fx er mange admins, kan det blive en fordel, HVIS der nu er et broddent kar, så kan du altid genskabe data!)
Rediger: ----------------------
<?php
IF(!empty($_GET['id'])){ // skal der være "i" i din "mysql_query? $getData = mysqli_query("SELECT * FROM tabel WHERE id = '".$_GET['id']."' LIMIT 1"); while($row = mysqli_fetch_array($getData)){
// check if there is any "overskrift"-text in the database IF(empty($row['overskrift'])){ $overskrift = "Indtast Overskrift"; } ELSE { $overskrift = $row['overskrift']; }
// check if there is any "navn"-text in the database IF(empty($row['navn'])){ $navn = "Indtast Navn"; } ELSE { $navn = $row['navn']; }
// check if there is any "nyhed"-text in the database IF(empty($row['nyhed'])){ $nyhed = "Indtast Nyhed"; } ELSE { $nyhed = $row['nyhed'], }
mysql_query("UPDATE nyheder SET overskrift = '$newoverskrift', navn = '$newnavn', nyhed = '$newnyhed' WHERE id = '".$_GET['id']."' LIMIT 1") or die(mysql_error());
hov .. den var ikke helt rigtig .. 2 sek :) hvad hedder den side, du opdaterer på - altså hvilken URL fanger du den på? tænker for eksempel: /editnews.php
REgner med du selv kan indsætte link til rette-delen (bare skriv samme som til filen og så ?id=".$row['id'].") og til slet delen (den må du selv kunne :D)
--------------------------------------------
<?php
IF(!empty($_GET['id'])){ // skal der være "i" i din "mysql_query? $getData = mysqli_query("SELECT * FROM tabel WHERE id = '".$_GET['id']."' LIMIT 1"); while($row = mysqli_fetch_array($getData)){
// check if there is any "overskrift"-text in the database IF(empty($row['overskrift'])){ $overskrift = "Indtast Overskrift"; } ELSE { $overskrift = $row['overskrift']; }
// check if there is any "navn"-text in the database IF(empty($row['navn'])){ $navn = "Indtast Navn"; } ELSE { $navn = $row['navn']; }
// check if there is any "nyhed"-text in the database IF(empty($row['nyhed'])){ $nyhed = "Indtast Nyhed"; } ELSE { $nyhed = $row['nyhed']; }
mysql_query("UPDATE nyheder SET overskrift = '$newoverskrift', navn = '$newnavn', nyhed = '$newnyhed' WHERE id = '".$_GET['id']."' LIMIT 1") or die(mysql_error());
Så virker scriptet næsten! :D når jeg trykker ret kommer input frem og den henter også de rigtigt ting i databasen, problemet er bare at når jeg retter i input og trykker "ret artikel" så opdaterer den det ikke i databasen...
Er der nogen der kan se problemet?
IF(!empty($_GET['id'])){ $conn = mysqli_connect ("localhost","root","1234","webdes"); $getid = $_GET['id']; $getData = mysqli_query($conn, "SELECT * FROM artikeldb WHERE id = '$getid' ORDER BY id DESC LIMIT 1"); while($row = mysqli_fetch_array($getData)){
mysqli_query($conn, "UPDATE artikeldb SET overskrift = '$newoverskrift', navn = '$newnavn', artikel = 'newartikel' WHERE id = '".$_GET['id']."' LIMIT 1");
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.