Avatar billede magnify Nybegynder
11. oktober 2001 - 13:14 Der er 49 kommentarer

Update funktion ?

Jeg har siddet og lavet newsscripts og tagwall osv., og det næste der kunne være fedt var at kunne rette i f.eks en nyhed..
Et simpelt eksempel på det der skal rettes i:

addtest.php:

<?
if ($REQUEST_METHOD == \"POST\") {
$connection = mysql_connect(\"localhost\", \"**\", \"**\");
mysql_select_db(\"**\", $connection);
mysql_query(\"insert into test (test) values (\'$test\')\");
}
?>

test.php

<?
           
$db = mysql_connect(\"localhost\", \"**\", \"**\");
mysql_select_db(\"**\", $db);
$foresp = mysql_query(\"select * from test\");
while($data = mysql_fetch_array($foresp)){
echo \"<br><br>$data[0]<br><br>\";
}
?>

Der den skulle lægge noget data ind i min tabel og hente det igen..
Når man skal \"rette\" skal man bruge UPDATE (så vidt jeg ved :) men det kan jeg sq ik\' heeelt få til at virke.. Jeg kunne godt bruge lidt hjælp.. :)

/mag
Avatar billede myplacedk Nybegynder
11. oktober 2001 - 13:16 #1
Fx:
UPDATE tabel SET felt=\'værdi\', felt2=\'værdi\' WHERE id=27
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:17 #2
det kan du gøre med

mysql_query(\"UPDATE test SET test = \'$test\' WHERE id = 1\");

id variere fra hvilken nyhed du vil opdatere
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:18 #3
Uhhhhhhhhhhhmm jeg tester det lige.. :)
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:23 #4
lad os se din kode, inden du brokker dig over det ik virker, hehe
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:24 #5
Hmm hvorfor stå der: WHERE id=1 ?
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:24 #6
det er deet id i tabellen som du vil opdatere
det skal jo laves om til $id, da deet sikker skal være dynamisk
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:25 #7
hehe ok lige 2 secs er lige ved at lave mad :P
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:25 #8
du skal fortælle hvilken post du vil opdatere, det kan du gøre ved at sige WHERE id = $id
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:26 #9
okai :-)
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:28 #10
Okay jeg har en side der hedder history.
Den skal man kunne adde og slette og rette i.
Jeg har lavet så man kan adde og slette..
Min tabel hedder \"history\" og feltet hedder også \"history\".
Koden jeg har indtil videre er:

<?
if ($REQUEST_METHOD == \"POST\") {
$connection = mysql_connect(\"localhost\", \"min_db\", \"mit_pass\");
mysql_select_db(\"jaja\", $connection);
mysql_query(\"update $history set history=\'$history\'\");
}
?>

Der...
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:31 #11
Jeg ved ikke om det hjalp...
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:31 #12
<?
if ($REQUEST_METHOD == \"POST\") {
mysql_connect(\"localhost\", \"min_db\", \"mit_pass\");
mysql_select_db(\"jaja\");
mysql_query(\"UPDATE history SET history = \'$history\' WHERE id = $id\");

$id skal du sørge for har den talværdi som svarer til det postid du vil opdatere...
}
?>
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:32 #13
Skal der oprettes et \"id felt\" i databasen også ?
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:32 #14
hov, min kommentar skal selv ikke være inde i koden, hehe
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:32 #15
ja det skal der
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:33 #16
og det skal oprettes som auto_increment og afkrydses i \"primary\" så vil den automatisk indsætte id hver gang du opretter ny post
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:33 #17
hehe :)
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:35 #18
Ja.. jeg er ved at oprette den men den brokker sig lidt.. og i det her tilfælde er der jo kun en \"history\" der bliver ikke oprettet flere.. :)
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:36 #19
ok, men posterne skal jo self. have et unikt id
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:36 #20
Men skal man ikke også ha\' noget mere kode der \"trækker\" alt hvad \"history feltet\" indeholder ud i en <form> ?
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:38 #21
jo det skal du også lave :))
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:42 #22
uhmmm jeg har formen men hvad er koden til at få den til at skrive det der står i feltet history i den form ? (ved ikke om det er forståeligt, og jeg skal nok give dig flere point :P)
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:43 #23
Noget lign.: mysql_query(\"SELECT * from $history WHERE id=\'$id[id]\'\");

??
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:44 #24

<textarea><?php echo$data[\'history\']; ?> </textare>
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:45 #25
nåå du mener din query...
ja det er vidst ik meget galt
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:46 #26
Hmmmmm jeg er sq ved at være lost.. det kan jo ikke være så svært.. :(
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:49 #27
DVS:

<?
if ($REQUEST_METHOD == \"POST\") {
$connection = mysql_connect(\"localhost\", \"min_db\", \"mit_pass\");
mysql_select_db(\"min_db\", $connection);
mysql_query(\"update $history set history=\'$history\' where id=1\");
mysql_query(\"SELECT * from $history WHERE id=\'$id[id]\'\");
}
?>
<textarea><?php echo $data[\'history\']; ?> </textarea>

Hvad mangler der her ? Jeg er jo stadig nubi til php... :/

Avatar billede htx98i17 Professor
11. oktober 2001 - 13:50 #28
<?
$hent = mysql_query(\"SELECT * from history WHERE id= \'$id\' \");
$hentnyheder = mysql_fetch_array($hent);
?>

<textarea><?php echo$data[\'history\']; ?> </textarea>
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:51 #29
form action sætter du til den fil som indeholder den kode der opdare posten
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:52 #30
stavefejlene koster ikke point
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:55 #31
Så er jeg nået frem til det her ?

<?
if ($REQUEST_METHOD == \"POST\") {
$connection = mysql_connect(\"localhost\", \"magnify\", \"gr4ffiti\");
mysql_select_db(\"magnify\", $connection);
$hent = mysql_query(\"SELECT * from history WHERE id= \'$id\' \");
$hentnyheder = mysql_fetch_array($hent);
}
?>

<center>
<form method=post action=<? echo $php_self; ?>>
<textarea><?php echo $data[\'history\']; ?></textarea>
<input type=hidden name=skriv value=1>
<br><br><input type=submit value=\"Ret history\">
</form>

Avatar billede magnify Nybegynder
11. oktober 2001 - 13:56 #32
hehe
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:57 #33
flot jeg sover.. :(
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:57 #34
<?
if ($REQUEST_METHOD == \"POST\") {
mysql_connect(\"localhost\", \"magnify\", \"gr4ffiti\");
mysql_select_db(\"magnify\");
$hent = mysql_query(\"SELECT * FROM history WHERE id = \'$id\' \");
$hentnyheder = mysql_fetch_array($hent);
}
?>

<center>
<form method=post action=<? echo $php_self; ?>>
<textarea><?php echo $data[\'history\']; ?></textarea>
<input type=\"hidden\" name=\"skriv\" value=\"<?php echo$hentnyheder[\'id\']; ?>\" >
<br><br><input type=\"submit\" value=\"Ret history\">
</form>


brug =\"noget\" - brug gåseøjn !
og drop variabledefinering af connection :)
Avatar billede magnify Nybegynder
11. oktober 2001 - 13:58 #35
Kunne være jeg skulle skifte mit pass.. :/
Avatar billede htx98i17 Professor
11. oktober 2001 - 13:59 #36
fejl rettet

<?
if ($REQUEST_METHOD == \"POST\") {
mysql_connect(\"localhost\", \"magnify\", \"gr4ffiti\");
mysql_select_db(\"magnify\");
$hent = mysql_query(\"SELECT * FROM history WHERE id = \'$id\' \");
$hentnyheder = mysql_fetch_array($hent);
}
?>

<center>
<form method=post action=<? echo $php_self; ?>>
<textarea><?php echo$hentnyheder[\'history\']; ?></textarea>
<input type=\"hidden\" name=\"skriv\" value=\"<?php echo$hentnyheder[\'id\']; ?>\" >
<br><br><input type=\"submit\" value=\"Ret history\">
</form>

Avatar billede htx98i17 Professor
11. oktober 2001 - 13:59 #37
hehe ja deet kunne være :)
Avatar billede magnify Nybegynder
11. oktober 2001 - 14:04 #38
hmm jeg har prøvet at paste den sidste post du har lavet ind og uploaded den det virker stadig ikke.............. jeg tror min hjerne kører i tomgang.. :/
Avatar billede htx98i17 Professor
11. oktober 2001 - 14:06 #39
så må du speede den lidt op, for en fuld løsning får du ikke :)
Avatar billede magnify Nybegynder
11. oktober 2001 - 14:07 #40
arrrrrrrrrrrj kom nu da :P
Avatar billede magnify Nybegynder
11. oktober 2001 - 14:08 #41
Jeg er jo nubi jeg har arbejdet med php 14 dage.. :)
Avatar billede htx98i17 Professor
11. oktober 2001 - 14:11 #42
nope
du kan selv gruple over deet nogle timer :) det lærer man faktisk af, hehe
Avatar billede magnify Nybegynder
11. oktober 2001 - 14:26 #43
<?
if ($REQUEST_METHOD == \"POST\") {
mysql_connect(\"localhost\", \"min_db\", \"mit_pass\");
mysql_select_db(\"min_db\");
mysql_query(\"UPDATE $history SET history=\'$id[id]\'\");
$hent = mysql_query(\"SELECT * from $history WHERE id=\'$history[id]\'\");
$hentnyhed = mysql_fetch_array($hent);
}
?>

<center>
<form method=post action=<? echo $php_self; ?>>
<textarea><?php echo ?></textarea>
<input type=\"hidden\" name=\"skriv\" value=\"<?php echo $hent[\'id\']; ?>\" >
<br><br><input type=\"submit\" value=\"Ret history\">
</form>

Hmmm hvor er der fejl her ?

Avatar billede magnify Nybegynder
11. oktober 2001 - 14:28 #44
Warning: Supplied argument is not a valid MySQL result resource in rethistory.php on line 31 <- Jeg får den fejl..
Avatar billede htx98i17 Professor
11. oktober 2001 - 14:43 #45
tag udgangspunkt i mit seneste eksempel
Avatar billede magnify Nybegynder
11. oktober 2001 - 14:53 #46
Well jeg får ingen fejl nu.. Men jeg kan stadig ikke se hvad jeg mangler.. :/
Avatar billede magnify Nybegynder
11. oktober 2001 - 15:11 #47
<?
if ($REQUEST_METHOD == \"POST\") {
mysql_connect(\"localhost\", \"min_db\", \"mit_pass\");
mysql_select_db(\"min_db\");
mysql_query(\"update $history set history = \'$history\' where id = \'$id\'\");
$hent = mysql_query(\"SELECT * FROM history WHERE id=\'$id\'\");
$hentnyheder = mysql_fetch_array($hent);
}
?>

<center>
<form method=post action=<? echo $php_self; ?>>
<textarea><?php echo \"$hentnyheder[id]\"; ?></textarea>
<input type=\"hidden\" name=\"skriv\" value=\"hentnyheder\" >
<br><br><input type=\"submit\" value=\"Ret history\">
</form>

Okay det er jeg kommet frem til nu.. Jeg får ingen fejl men der står stadig intet i min form..

Avatar billede magnify Nybegynder
11. oktober 2001 - 15:14 #48
Den query hvor man bruger \"update\" kan jeg ikke helt finde udaf.. :(
Avatar billede magnify Nybegynder
17. november 2002 - 23:52 #49
Kan dette spørgsmål også blive lukket? :)
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