Avatar billede thedeathart Nybegynder
23. april 2004 - 10:27 Der er 7 kommentarer og
1 løsning

Updatefunktion + fetch

Hey..

Jeg har et nyhedsys (PHP/SQL), og jeg vil gerne kunne rette i mine nyheder efter jeg har skrevet dem..

har lavet en udgave hvor den bruger update, hvor at startvaluen i mine inputs er et echo, men jeg får (selføldig) kun vist nyhed nr. 1.. spørgsmålet lyder så på om man kan lave en "næste" funktion, eller jeg skal opbygge det på en helt anden måde..
Avatar billede dennismp Nybegynder
23. april 2004 - 17:25 #1
Jeg plejer at lave en oversigt, og så tilføje et redigér-link. Det link peger så på det script der gør som du har beskrevet om nyhed #1.
Avatar billede thedeathart Nybegynder
23. april 2004 - 18:38 #2
hmm, okay.. også noget i den retning jeg forestillet mig..

Hvordan kan jeg lave sådan et redigerlink ?
Avatar billede dennismp Nybegynder
23. april 2004 - 18:45 #3
Gider du at poste det kode du har, så er det nemmere :)
Avatar billede thedeathart Nybegynder
23. april 2004 - 19:08 #4
//Formen til at updatere


<html>
<head>
<title>Ret en nyhed</title>
<link rel="stylesheet" type="text/css" href="../style.css">

</head>

<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">

<?php

include ('../config.php');

// Hent først data ud
$resultat = mysql_query("select * FROM nyhedsys order by date desc");

// Kør så igennem for hver række
while ($raekke = mysql_fetch_array($resultat)) {
  extract($raekke);
}
?>


<form ACTION="retnyhed.php" method="get">
<p><h2><b>.: Ret en nyhed :.</b></h2><b><br>
Overskrift:<br> <input type="text" value="<? echo"$headline" ?>" name="headline"><br>
<br>
Navn:<br> <input type="text" value="<? echo"$name" ?>" name="name"><br>
<br>
Email:<br>
<input type="text" value="<? echo"$email" ?>" name="email"><br>
<br>
Nyhed:<br> <textarea name="news" rows="10" cols="35"><? echo"$news" ?></textarea></b></p>
<br>
<input type=submit value=Updater name="submit" >
</form>
</body>

</html>


//SQL delen

<?

include "../config.php";

$id = time();

mysql_query("
UPDATE nyhedsys SET id='$id',headline='$headline',name='$name',email='$email',news='$news',date=now()") or die(mysql_error());

header("Location: ../nyheder.php");
?>
Avatar billede dennismp Nybegynder
23. april 2004 - 19:35 #5
prøv dette

//Formen til at updatere
<html>
<head>
<title>Ret en nyhed</title>
<link rel="stylesheet" type="text/css" href="../style.css">

</head>

<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">

<?php
include ('../config.php');

if( isset( $_GET['id'] ) )
  $id = $_GET['id'];
else
  $id = null;


if( $id !== null ) {
  // Hent først data ud
  $resultat = mysql_query("select * FROM nyhedsys WHERE id = '$id'");

  // Kør så igennem for hver række
  $raekke = mysql_fetch_array($resultat);
  if( $raekke == null )
    die("Fandt ikke rækken");

  extract($raekke);
?>


<form ACTION="retnyhed.php" method="get">
<input type="hidden" value="<? echo $id ?>" name="id">
<p><h2><b>.: Ret en nyhed :.</b></h2><b><br>
Overskrift:<br> <input type="text" value="<? echo"$headline" ?>" name="headline"><br>
<br>
Navn:<br> <input type="text" value="<? echo"$name" ?>" name="name"><br>
<br>
Email:<br>
<input type="text" value="<? echo"$email" ?>" name="email"><br>
<br>
Nyhed:<br> <textarea name="news" rows="10" cols="35"><? echo"$news" ?></textarea></b></p>
<br>
<input type=submit value=Updater name="submit" >
</form>
<?php
}
else {
  $sql = "SELECT id, name FROM nyhedsys ORDER BY name";
  $res = mysql_query($sql) or die(mysql_error());
  // Lav liste
  while($row = mysql_fetch_array()) {
    print '<a href="' . $_SERVER['PHP_SELF'] . '?id=' . $row[0] . '">'.
      stripslashes($row[1]). '</a><br />';
  }
}
?>
</body>

</html>


//SQL delen

<?
include "../config.php";

$id = $_GET['id'];

mysql_query("UPDATE nyhedsys SET headline='$headline',name='$name',email='$email',news='$news',date=now() WHERE id='$id'") or die(mysql_error());

header("Location: ../nyheder.php");
?>
Avatar billede thedeathart Nybegynder
23. april 2004 - 20:32 #6
Nice, det virker.. mange tak..Læg et svar og der er point..
Avatar billede dennismp Nybegynder
23. april 2004 - 20:52 #7
Det var så lidt. Hvis du har spørgsmål, så sig endelig til.
Avatar billede thedeathart Nybegynder
24. april 2004 - 17:15 #8
kk
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
Computerworld tilbyder specialiserede kurser i database-management

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