Avatar billede mulles.tk Nybegynder
11. august 2003 - 19:41 Der er 12 kommentarer og
1 løsning

Indsæt & slet i db

Kan man ikke godt gøre noget lign. det her:

<?php
if (isset($_POST['send'])) {
    mysql_query("INSERT INTO faq (spm, svar, navn, email) values ('$_POST[spm]', '$_POST[svar]', '$_POST[navn]', '$_POST[email]')") or die(mysql_error());
    mysql_query("DELETE FROM faq_open WHERE id=$id");
    echo "<b><center><font color='#008000'>Spørgsmålet er tilføjet</font></b></center>";}
?>

$id er defineret længere op på siden!
Avatar billede detox Nybegynder
11. august 2003 - 19:50 #1
Det ser umiddelbart rigtigt ud. Driller det?
Avatar billede mulles.tk Nybegynder
11. august 2003 - 19:53 #2
Hmm..., ja det driller!!! Den indsætter det godt nok, men sletter ikke noget fra faq_open :/
Avatar billede schaefner Juniormester
11. august 2003 - 19:54 #3
Prøv:
mysql_query("DELETE FROM faq_open WHERE id=$id") or die(mysql_error());
Avatar billede sekt Nybegynder
11. august 2003 - 22:22 #4
hvilken rettigheder har din sql bruger
Avatar billede mulles.tk Nybegynder
11. august 2003 - 23:33 #5
Schaefner ~ Hvis koden ser sådan her ud:
<?php
if (isset($_POST['send'])) {
    mysql_query("INSERT INTO faq (spm, svar, navn, email) values ('$_POST[spm]', '$_POST[svar]', '$_POST[navn]', '$_POST[email]')") or die(mysql_error());
    mysql_query("DELETE FROM faq_open WHERE id=$id") or die(mysql_error());
    echo "<b><center><font color='#008000'>Spørgsmålet er tilføjet</font></b></center>";}
?>

...får jeg flg. fejl:

You have an error in your SQL syntax near '' at line 1

Sekt ~ Hmm... hvad er det for nogen rettigheder?
Avatar billede sukos Juniormester
12. august 2003 - 09:06 #6
Hvad med:
    mysql_query("INSERT INTO `faq` (`spm`, `svar`, `navn`, `email`) values ('". $_POST["spm"] ."', '". $_POST["svar"] ."', '". $_POST["navn"] ."', '". $_POST["email"] ."')") or die(mysql_error());
    mysql_query("DELETE FROM `faq_open` WHERE `id`='". $id ."'") or die(mysql_error());

eller "den korte"(fejlen, bare):
    mysql_query("DELETE FROM faq_open WHERE id='$id'") or die(mysql_error());
altså to ' omkring $id
Avatar billede mulles.tk Nybegynder
12. august 2003 - 14:38 #7
Hmm... virker heller ikke?

Her har I lige hele koden:

<?php
if (isset($_GET['id'])) {
    $id = $_GET['id'];
    $query = mysql_query("SELECT * FROM faq_open WHERE id=$id");
    $row = mysql_fetch_array($query);}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">

<input type="hidden" name="navn" value="<?php echo $_SESSION['fuldenavn']; ?>">
<input type="hidden" name="email" value="<?php echo $_SESSION['email']; ?>">

<h1>Spørgsmål:</h1>
<input type="text" name="spm" value="<?= $row[spm] ?>"size="30">

<h1>Svar:</h1>
<a href="java script:html()">klik her for html-tags!</a>

<p><textarea rows="12" name="svar" cols="75"></textarea></p>

<p><input type="submit" value="besvar spørgsmål!" name="send"></p>
</form>
<br>
<?php
if (isset($_POST['send'])) {
    mysql_query("INSERT INTO faq (spm, svar, navn, email) values ('$_POST[spm]', '$_POST[svar]', '$_POST[navn]', '$_POST[email]')");
    mysql_query("DELETE FROM faq_open WHERE id=$id");
    echo "<b><center><font color='#008000'>Spørgsmålet er tilføjet</font></b></center>";}
?>
Avatar billede sekt Nybegynder
12. august 2003 - 16:21 #8
jeg vil råde dig til at læse Peter Toft & Hans Schou's Linux -Friheden til egen webserver kapitel 5. http://www.linuxbog.dk/web/bog/php-ex.html
det handler om PHP og rettigheder.
Avatar billede mulles.tk Nybegynder
12. august 2003 - 17:21 #9
Jamen jeg har rettigheden til at slette, hvis det er det du mener! På flere sider har jeg funktionen slet, så det skulle ikke være det der er problemet..
Avatar billede schaefner Juniormester
12. august 2003 - 17:25 #10
Prøv:

<?php
if (isset($_GET['id'])) {
    $id = $_GET['id'];
    $query = mysql_query("SELECT * FROM faq_open WHERE id=$id");
    $row = mysql_fetch_array($query);
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
<input type="hidden" name="id" value="<?php echo $_GET['id']; ?>">
<input type="hidden" name="navn" value="<?php echo $_SESSION['fuldenavn']; ?>">
<input type="hidden" name="email" value="<?php echo $_SESSION['email']; ?>">

<h1>Spørgsmål:</h1>
<input type="text" name="spm" value="<?php echo $row['spm'] ?>"size="30">

<h1>Svar:</h1>
<a href="java script: html()">klik her for html-tags!</a>

<p><textarea rows="12" name="svar" cols="75"></textarea></p>

<p><input type="submit" value="besvar spørgsmål!" name="send"></p>
</form><br>

<?php
if (isset($_POST['send'])) {
    $id = $_POST['id'];
    mysql_query("INSERT INTO faq (spm, svar, navn, email) VALUES ('$_POST[spm]', '$_POST[svar]','$_POST[navn]','$_POST[email]')") or die(mysql_error());
    mysql_query("DELETE FROM faq_open WHERE id=$id") or die(mysql_error());
    echo '<b><center><font color="#008000">Spørgsmålet er tilføjet</font></b></center>';
}
?>
Avatar billede mulles.tk Nybegynder
12. august 2003 - 17:42 #11
Hmm... havde selv rodet lidt med at lave et skjult felt der hed id, men kunne ikke få det til at virke? Men det her virker.... Så mange tak! Opretter du ikke lige et svar?

Ved echo prøvede jeg at rette de to ' til to " , men det kunne den ikke li'! Hvorfor?
Avatar billede schaefner Juniormester
12. august 2003 - 17:48 #12
Fordi du så har "" inde midt i din streng, til at omkranse #008000, så php kan ikke finde ud af hvor din streng egentlig slutter. Du kan gøre det på flere måder:

echo '<b><center><font color="#008000">Spørgsmålet er tilføjet</font></b></center>';
echo "<b><center><font color=\"#008000\">Spørgsmålet er tilføjet</font></b></center>";
echo '<b><center><font color=\'#008000\'>Spørgsmålet er tilføjet</font></b></center>';
echo "<b><center><font color='#008000'>Spørgsmålet er tilføjet</font></b></center>";

bare huske at escape (\) eventuelle quotes alt efter om du bruger single- eller double quotes, men det skulle gerne stå klart i eksemplet ovenover.

mvh. Jesper Sørensen
Avatar billede mulles.tk Nybegynder
12. august 2003 - 22:03 #13
Nåh... havde ikke lige set at der var " " rundt om color= :D

Poitene er givet...
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