/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Redigering via en formular - hvordan?
Fra : Allan Johansen


Dato : 01-04-02 00:59

Hej NG

Jeg ønsker, at redigere i noget indhold som allerede er lagt i databasen.
Redigeringen skal ske via en formular, altså f.eks hente indholdet fra et
bestemt id i databasen, rette i indholdet og herefter sende det tilbage til
databasen.
Hvordan gør jeg det? Kan jeg evt. bruge den samme formularside som jeg
brugte til at lægge indholdet i databasen med?

Hvis der er nogle, som kan henvise til sider/artikler/tutorials, som kan
skabe forståelse for et evt. svar vil det være helt perfekt, da jeg også
gerne vil lære af et evt. svar.

Mvh. Allan Johansen



 
 
rofe@mailme.dk (01-04-2002)
Kommentar
Fra : rofe@mailme.dk


Dato : 01-04-02 05:15

Hej Allan

Det er der skam ikke det store hokus pokus i :)
Du kan godt bruge det samme formular design, som du brugte til at smide
data'ene ind i DB'en med,
med enkelte ændringer der identificere den række du ændre data i.

Hvordan gør man:
1. man henter sine data fra databasen

$result = mysql_query("SELECT id, navn, adresse, telefonnr FROM tbl WHERE id
= 0"); /* vi henter de felter vi ønsker fra db'en hvor id er lig 0 */

2. vi gør data'ene brugbare til html

list($id, $navn,$adresse,$telefonnr) = mysql_fetch_row($result);

3. vi propper det ind i HTML dokumentet så det kan ændres
Hvert input felt kan have en attribut kalde VALUE hvor man kan sætte en
default værdi til det aktuelle input felt.
Det vil sige at vi i ovenstående eksempel med navn, adresse og telefon
nummer laver tre felter:
BEMÆRK DETTE ER GJORT I NONE PHP MODE, men kan gøres i php mode, mellem
<?php ?>
dog skal du så blot huske at escape de forskellige ting.

<en masse html>

<form method="post" action="submit.php">
<input type="text" name="navn" value="<?php echo $navn; ?>">
<input type="text" name="adresse" value="<?php echo $adresse; ?>">
<input type="text" name="telefonnr" value="<?php echo $telefonnr; ?>">
<input type="hidden" name="id" value="<?php echo $id; ?>"> <-----
dette felt identificere den række du vil ændre data i
<input type="submit">
</form>

<mere html>

submit.php (action du bruger til at behandle de submittet data med) skal så
opdatere data i den givne tabel
noget i stil med:
mysql_query("UPDATE tbl SET navn, adresse, telefonnr
VALUES('$navn','$adresse','$telefonnr') WHERE id = $id);


Det skulle gerne forklare hvordan man kan gøre det, dog tages forbehold for
tastefejl og tunge øjenlåg :)

Men forstår du det ikke så skriv igen :)

m v h
Ronni
rofe@mailme.dk




"Allan Johansen" <hesselbjerg@adslhome.dk> wrote in message
news:3ca7b7ce$1$72398$edfadb0f@dspool01.news.tele.dk...
> Hej NG
>
> Jeg ønsker, at redigere i noget indhold som allerede er lagt i databasen.
> Redigeringen skal ske via en formular, altså f.eks hente indholdet fra et
> bestemt id i databasen, rette i indholdet og herefter sende det tilbage
til
> databasen.
> Hvordan gør jeg det? Kan jeg evt. bruge den samme formularside som jeg
> brugte til at lægge indholdet i databasen med?
>
> Hvis der er nogle, som kan henvise til sider/artikler/tutorials, som kan
> skabe forståelse for et evt. svar vil det være helt perfekt, da jeg også
> gerne vil lære af et evt. svar.
>
> Mvh. Allan Johansen
>
>



Allan Johansen (03-04-2002)
Kommentar
Fra : Allan Johansen


Dato : 03-04-02 01:30

Hej NG


Hvorfor virker dette her ikke? Kig evt. på
http://www.hesselbjerg.dk/test/phpOverwiew.php
( Ja, det ser ikke kønt ud, men det kommer det forhåbentlig til, når koden
bliver implementeret i mit site - Newbie, derfor! )


Database tilslutningen er undladt

$result = mysql_query("SELECT dato,skribent,overskrift,forord,artikel,id
FROM katteadfaerd WHERE id='$id'") or die (mysql_error());

while($row = mysql_fetch_row($result)){

$dato = $row["dato"];
$skribent = $row["skribent"];
$overskrift = $row["overskrift"];
$forord = $row["forord"];
$artikel = $row["artikel"];
$id = $row["id"];

?>

<form method="post" action="submit2.php">
Dato:<br>
<input type="text" name="Dato" value="<?php echo $dato; ?>"><br>
<br>
Skribent:<br>
<input type="text" SIZE=50 name="skribent" value="<?php echo $skribent;
?>"><br>
<br>
Overskrift:<br>
<input type="text" SIZE=100 name="overskrift" value="<?php echo $overskrift;
?>"><br>
<br>
Forord:<br>
<textarea name="forord" value="<?php echo $forord; ?>" rows="4"
cols="60"></textarea><br>
<br>
Artikel:<br>
<textarea name="artikel" value="<?php echo $artikel; ?>" rows="10"
cols="60"></textarea><br>
<br>
Id:<br>
<input type="text" SIZE=5 name="id" value="<?php echo $id; ?>"><br>
<br>

<input type="submit">
</form>

</body>
</html>

--------
submit2.php
--------
<?php

Database tilslutningen er undladt

$query = mysql_query("UPDATE katteadfaerd SET
Dato='$dato',skribent='$skribent',overskrift='$overskrift',forord='$forord',
artikel='$artikel',id='$id WHERE id='$id'");


echo "Dit Resultat er tilføjet. Tilføj flere eller vis artiklerne <a
href=\"phpOverwiew.php\">her.</a>";
}
?>



Mvh. Allan Johansen





Allan Johansen (05-04-2002)
Kommentar
Fra : Allan Johansen


Dato : 05-04-02 16:59

Hej NG

Mit problem er nu løst.

Mvh. Allan Johansen



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste