Avatar billede scriptnet Nybegynder
14. juli 2005 - 01:03 Der er 13 kommentarer og
1 løsning

Ret en tekst fra MYSQL database!

Hey Eksperter!

Jeg er rimelig ny i php/mysql verdenen og har derfor sidet og bakset lige med et script hvor man kan ændre indholdet i min mysql database - i dette tilfælde en tekst.

Men nu er jeg stødt på grund så og sige. Jeg kan ikke finde fejlen i scriptet.

retindhold.php
-------------
<?php
require_once("db.php");
if($_GET['action'] == "skriv") {

echo"<font face=\"Verdana\" size=\"1\" color=\"#000000\">Info rettet. <a href=\"visindhold.php\">her</a><font>";

mysql_query("UPDATE velkommen set tekst = '$tekst'");

} else {
?><center>
<font face="Verdana" size="1" color="#000000">
<?
$res = mysql_query("SELECT * FROM velkommen");
while ($row = mysql_fetch_array($res)) {
?>
<form method="post" action="retindhold.php" onsubmit="return checkfields()">
TEKST:<br>
<textarea name="tekst" cols="50" rows="10"><? echo''.$row['tekst'].''; ?></textarea> <br><br>
<input type="hidden" name="action" value="skriv">
<input type="submit" value="Ret indhold">
</center>
</form>
</font>
<?php
} }
?>

visindhold.php
--------------
<?
require_once("db.php");

$res = mysql_query("SELECT * FROM velkommen");
while ($row = mysql_fetch_array($res)) {
?>
<font face="Verdana" size="1" color="#000000">
<? echo''.$row['tekst'].''; ?>
</font>
<?php
}
?>

Oprettet database
-----------------
CREATE TABLE velkommen (
  tekst text NOT NULL
) TYPE=MyISAM;


Og så selvfølgelig db.php som jeg ikke tror er nødvendig at poste her.


Når jeg retter i teksten og trykker ret indhold sker der intet hvorfor?

På forhånd tak for hjælpen!
Avatar billede webt Nybegynder
14. juli 2005 - 02:36 #1
Udskriver den en fejlmeddelelse?

Prøv at sætte en
mysql_query("UPDATE velkommen set tekst = '$tekst'") or die(mysql_error());
i stedet for den nuværende
Avatar billede hmortensen Nybegynder
14. juli 2005 - 10:10 #2
Det er en post variabel du vil opdatere med.
mysql_query("UPDATE velkommen SET tekst = '".$_POST['tekst']."'")
Avatar billede webt Nybegynder
14. juli 2005 - 10:31 #3
Ja men det er det da også den så jeg absolut ikke kl halv tre i nat da jeg var klar til at dejse i seng efter 3 timers vasketøj :D men det er da klart det der er problemet
Avatar billede scriptnet Nybegynder
14. juli 2005 - 14:14 #4
Det løste desvære ikke problemet - Der sker stadig intet hvis jeg ændre teksten.

Andre bud?
Avatar billede scriptnet Nybegynder
14. juli 2005 - 14:20 #5
Og den kommer forresten ikke med nogen fejlmeddelser, selv ikke når jeg benytter die(mysql_error());
Avatar billede webt Nybegynder
14. juli 2005 - 14:32 #6
Prøv at ændre til
if($_POST['action'] == "skriv") {
echo "Der kommer noget med";
echo"<font face=\"Verdana\" size=\"1\" color=\"#000000\">Info rettet. <a href=\"visindhold.php\">her</a><font>";
mysql_query("UPDATE velkommen set tekst = '".$_POST['tekst'].'");

Mvh
Martin
Avatar billede scriptnet Nybegynder
14. juli 2005 - 14:48 #7
Har således ændret retindhold.php til:

<?php
require_once("db.php");
if($_POST['action'] == "skriv") {
echo "Der kommer noget med";
echo"<font face=\"Verdana\" size=\"1\" color=\"#000000\">Info rettet. <a

href=\"visindhold.php\">her</a><font>";
mysql_query("UPDATE velkommen set tekst = '".$_POST['tekst'].'");
} else {
?><center>
<font face="Verdana" size="1" color="#000000">
<?
$res = mysql_query("SELECT * FROM velkommen");
while ($row = mysql_fetch_array($res)) {
?>
<form method="post" action="retvelkommen.php" onsubmit="return checkfields()">
TEKST:<br>
<textarea name="tekst" cols="50" rows="10"><? echo''.$row['tekst'].''; ?></textarea> <br><br>
<input type="hidden" name="action" value="skriv">
<input type="submit" value="Ret velkommen">
</center>
</form>
</font>
<?php
} }
?>

Her for jeg følgende fejlmeddedelse:
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in /usr/home/web/web69713/velkommen/retvelkommen.php on line 18
Avatar billede webt Nybegynder
14. juli 2005 - 14:51 #8
hovsa min fejl det skulle ha været set tekst=' ".$_POST['tekst']." '
Avatar billede scriptnet Nybegynder
14. juli 2005 - 15:40 #9
Endnu en fejl dukker op.

retindhold.php:

<?php
require_once("db.php");
if($_POST['action'] == "skriv") {
echo "Der kommer noget med";
echo"<font face=\"Verdana\" size=\"1\" color=\"#000000\">Info rettet. <a

href=\"visindhold.php\">her</a><font>";
mysql_query("UPDATE velkommen set tekst = ' ".$_POST['tekst']." ');
} else {
?><center>
<font face="Verdana" size="1" color="#000000">
<?
$res = mysql_query("SELECT * FROM velkommen");
while ($row = mysql_fetch_array($res)) {
?>
<form method="post" action="retvelkommen.php" onsubmit="return checkfields()">
TEKST:<br>
<textarea name="tekst" cols="50" rows="10"><? echo''.$row['tekst'].''; ?></textarea> <br><br>
<input type="hidden" name="action" value="skriv">
<input type="submit" value="Ret velkommen">
</center>
</form>
</font>
<?php
} }
?>

Fejl:
Parse error: parse error, unexpected T_STRING in /usr/home/web/web69713/velkommen/retvelkommen.php on line 9
Avatar billede webt Nybegynder
14. juli 2005 - 16:40 #10
der mangler lige en " efter det sidste ' altså
mysql_query("UPDATE velkommen set tekst = '".$_POST['tekst']."'");

Det er altid de små ting, men nu må vi så se om den overhovedet kommer ind i den if

men det kan jeg da egenlig se at den ikke gør

fordi du sender den til retvelkommen.php, men så vidt jeg kan se her skal du sende den til retindhold.php?

Mvh
Martin
Avatar billede scriptnet Nybegynder
14. juli 2005 - 16:58 #11
Nu virker det! :) Mange tak for hjælpen. Du får selvfølgelig pointsne.
Avatar billede scriptnet Nybegynder
14. juli 2005 - 17:00 #12
.
Avatar billede scriptnet Nybegynder
14. juli 2005 - 17:01 #13
Hov kan ikke points medmindre du benytter dig af "svar" muligheden.
Avatar billede webt Nybegynder
14. juli 2005 - 17:03 #14
Glad for du fik det til at virke :)
Her kommer et svar fra mig

Mvh
martin
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