Avatar billede fbb Nybegynder
16. marts 2003 - 03:25 Der er 19 kommentarer og
1 løsning

Ret funktion

Hej, nu har jeg siddet og kigget lidt på denne her.

En de rkan se min fejl?

Den kommer ikke med nogle fejl, den updater bare ikke :(

KODE:
<?php
require_once("db.php");
if($action == "skriv") {

echo'<font face="Verdana" size="1" color="#000000">Kommentar rettet.';


mysql_query("UPDATE kommentarer set author = '$author', email = '$email', text = '$text' WHERE id = '$_GET[id]' ");

} else {
?>
<center>
<font face="Verdana" size="1" color="#000000">
<?
$res = mysql_query("SELECT * FROM kommentarer WHERE id = '$_GET[id]' ");
while ($row = mysql_fetch_array($res)) {
?>
<form method="post" action="<?=$PHP_SELF ?>" onsubmit="return checkfields()">
Navn:<br>
<input value="<? echo''.$row['author'].''; ?>" name="author" size="51"> <br>
E-mail:<br>
<input value="<? echo''.$row['email'].''; ?>" name="email" size="51"> <br>
Kommentar:<br>
<textarea name="text" cols="50" rows="10"><? echo''.$row['text'].''; ?></textarea> <br>

<br><br>
<input type="hidden" name="id" value="<? $_GET[id] ?>">
<input type="hidden" name="action" value="skriv">
<input type="submit" value="Ret kommntar">
</center>
</form>
</font>
<?php
} }
?>
Avatar billede 7th Praktikant
16. marts 2003 - 03:36 #1
Prøv med ("UPDATE kommentarer SET news_author=\"$author\" , email=\"$email\" , text=\"$text\" WHERE news_id=\"".$_GET['id']."\"")
Avatar billede 7th Praktikant
16. marts 2003 - 03:38 #2
("UPDATE kommentarer SET news_author=\"$author\" , email=\"$email\" , text=\"$text\" WHERE id=\"".$_GET['id']."\"")

Sådan skulle det vist være ;)
Avatar billede fbb Nybegynder
16. marts 2003 - 03:40 #3
Virker ikke, ved ikke lige hvorfor du sætter news_ på?
Avatar billede 7th Praktikant
16. marts 2003 - 03:40 #4
Oki nu er jeg vist træt... ;)

("UPDATE kommentarer SET author=\"$author\" , email=\"$email\" , text=\"$text\" WHERE id=\"".$_GET['id']."\"")

".$_GET['id']." skal være der for at php kan vide at det er noget dynamisk input, og ikke statisk input...
Avatar billede fbb Nybegynder
16. marts 2003 - 03:43 #5
Virker heller ikke
Avatar billede fbb Nybegynder
16. marts 2003 - 03:44 #6
måske noget med:
<input type="hidden" name="id" value="<? $_GET[id] ?>">
??
Avatar billede 7th Praktikant
16. marts 2003 - 03:46 #7
Hmmm lad mig lige tænke. Hvordan får du fat i id i denne linie ?

<input type="hidden" name="id" value="<? $_GET[id] ?>">
Avatar billede fbb Nybegynder
16. marts 2003 - 03:48 #8
Det jeg spørg om :(

Jeg er gået kold for idér
Avatar billede 7th Praktikant
16. marts 2003 - 03:52 #9
Ahh ok, well $_GET[id] bruges til at forspørge på en variabel i url, i dette tilfælde id. Hvis id ikke er sat i url, så er id jo tomt, og <input type="hidden" name="id" value="<? $_GET[id] ?>"> får derfor ikke nogen værdi på sig. Samme gør sig gældende ved ("UPDATE kommentarer SET author=\"$author\" , email=\"$email\" , text=\"$text\" WHERE id=\"".$_GET['id']."\""). Er id ikke sat i url, vil id jeg være tomt, så du må udtænke en måde at udskrive id og få fat på det igen.
Avatar billede fbb Nybegynder
16. marts 2003 - 03:56 #10
Mit link til min ret side hedder:
retkommentar.php?id='.$r["id"].'

Hvos det kan hjælpe!

og den kommer til at se fx sådan her ud inde på ret siden:
retkommentar.php?id=42
Avatar billede 7th Praktikant
16. marts 2003 - 04:09 #11
Er ret træt, men lige et sidste spørgsmål. For du den korrekte tekst skrevet ud i forhold til id ? Hvis ja og url har et id så skulle ("UPDATE kommentarer SET author=\"$author\" , email=\"$email\" , text=\"$text\" WHERE id=\"".$_GET['id']."\"") virke. Måske er det ved if ($action == "skriv") det går galt. Prøv med if ((isset ($_POST['action'])) && ($_POST['action'] == "skriv"))
{
("UPDATE kommentarer SET author=\"$author\" , email=\"$email\" , text=\"$text\" WHERE id=\"".$_GET['id']."\"")
}
Avatar billede fbb Nybegynder
16. marts 2003 - 04:13 #12
Jeg for det rigtige ud i mine felter, det der giver fejl i den sidste } du skrev!
Avatar billede fbb Nybegynder
16. marts 2003 - 04:17 #13
Jeg hopper i seng, der er også en dag i morgen/senere..

Håber du vil kigge fordi igen når du har fået lidt søvn og kan kigge kode hehe ;)
Avatar billede erikjacobsen Ekspert
16. marts 2003 - 07:10 #14
En mulig, simpel løsning på det oprindelige script kunne være at ændre
    <input type="hidden" name="id" value="<? $_GET[id] ?>">
til
    <input type="hidden" name="id" value="<?= $_GET[id] ?>">
Avatar billede erikjacobsen Ekspert
16. marts 2003 - 07:11 #15
Nå, ja, og så udskifte $_GET[id] med $_POST[id] et par steder
Avatar billede snuseren.dk Nybegynder
16. marts 2003 - 09:51 #16
prøv bare med require("fil.php") istedet for requires_ones.
Avatar billede fbb Nybegynder
16. marts 2003 - 10:18 #17
erikjacobsen ;)

Det virker nu tak for det!

Måske du kan lave et lille svar?
Avatar billede erikjacobsen Ekspert
16. marts 2003 - 11:16 #18
Tak, ingen point til mig
Avatar billede fbb Nybegynder
16. marts 2003 - 11:27 #19
ok, jeg giver jeg dem til 7th da han gav et godt forsøg.


Men tak igen ;)
Avatar billede 7th Praktikant
16. marts 2003 - 20:11 #20
Takker for points :)
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