Avatar billede jolly_jay Nybegynder
08. marts 2003 - 15:47 Der er 12 kommentarer og
1 løsning

Opdater MySQL?

Hvorfor vil min rediger side ikke opdater felter i mysql?

Jeg har ikke så meget styr på mysql, men er dog ved at lære det :D

<?
$skriv = $_REQUEST["skriv"];
$besked = $_REQUEST["besked"];

if (is_array($_GET))
{
$nr = $_GET['nr'];
}

$username = "Jolly";
$password = "050684";

$user = $HTTP_COOKIE_VARS["user"];
$pass = $HTTP_COOKIE_VARS["pass"];

if ($skriv)
{

if (($user == $username) && ($pass == $password))
{
$db = mysql_connect("jolly","root","050684");
mysql_select_db("gbog",$db);
$besked = str_replace("\n","<br>",$besked);
mysql_query("UPDATE bog WHERE nr = $nr(besked) VALUES ('$besked')");
mysql_close;
header('Location: tagwall.php');
}
else
{
include("style.php");
?>
<body bgcolor="#707070">
<center>
<table width='300' border='0' celpadding='0' cellspacing='0' bgcolor='#000000'>
  <tr>
    <td BGCOLOR="#000000">
      <table width='100%' height='100%' border='0' celpadding='0' cellspacing='0'>
        <TR>
          <TD bgcolor='#eeeeee'>
          <center>Hvad har du gang i?<br>
          <a href='tagwall.php'>Tilbage igen</A></CENTER>
          </td>
        </tr>
      </TABLE>
    </td>
  </tr>
</table> 
</center>
<?
}
}
else
{

$db = mysql_connect("jolly","root","050684");
mysql_select_db("gbog",$db);
?>

<HTML>
<HEAD><TITLE>TAGWALL</TITLE>
</HEAD>
<?php
include("style.php");
?>
<body bgcolor="#707070">
<center>
<table width='500' border='0' celpadding='0' cellspacing='0' bgcolor='#000000'>
  <tr>
    <td>
      <table width='100%' height='100%' border='0' celpadding='0' cellspacing='0'>
        <TR>
          <TD bgcolor='#CFCFCF' VALIGN=TOP>
            <center>Rediger</Center>
          </TD>
        </TR>
      </TABLE>
    </td>
  </tr>
</table>
<br>
<?

$foresp=mysql_query("SELECT nr,navn,email,besked FROM bog Where nr = $nr");
$data = mysql_fetch_row($foresp);

$data[3] = str_replace("<br>","\n",$data[3]);

echo "<table width='300' border='0' celpadding='0' cellspacing='0' bgcolor='#000000'>\n";
echo "  <tr>\n";
echo "    <td BGCOLOR='#000000'>\n";
echo "      <table width='100%' height='100%' border='0' celpadding='0' cellspacing='0'>\n";
echo "        <TR>\n";
echo "          <TD bgcolor='#eeeeee' VALIGN=TOP>\n";
echo "            <FORM METHOD=POST ACTION='rediger.php?nr=$data[0]'>\n";
echo "            <INPUT TYPE=hidden NAME=skriv Value=1>\n";
echo "            <TABLE BORDER='0' CELLSPACING='1' ALIGN='center'>\n";
echo "              <TR HEIGHT='30' VALIGN='bottom'>\n";
echo "                <TD>Navn:</TD>\n";
echo "                <TD>$data[1]</TD>\n";
echo "              </TR>\n";
echo "              <TR>\n";
echo "                <TD>E-mail:</TD>\n";
echo "                <TD>$data[2]</TD>\n";
echo "              </TR>\n";
echo "            </TABLE>\n";
echo "          </TD>\n";
echo "        </TR>\n";
echo "        <TR BGCOLOR='#FFFFFF'>\n";
echo "          <TD bgcolor='#eeeeee' ALIGN='center'>\n";
echo "            <TEXTAREA NAME=besked COLS=30 ROWS=6>$data[3]</TEXTAREA>\n";
echo "            <BR>\n";
echo "          </TD>\n";
echo "        </TR>\n";
echo "        <TR BGCOLOR='#FFFFFF'>\n";
echo "            <TD bgcolor='#eeeeee' ALIGN='center' HEIGHT='50' VALIGN='bottom'>\n";
echo "            <INPUT TYPE=submit value=Send>\n";
echo "            </FORM>\n";
echo "          </TD>\n";
echo "        </TR>\n";   
echo "        </TR>\n";
echo "      </TABLE>\n";
echo "    </td>\n";
echo "  </tr>\n";
echo "</table>\n";
echo "<br>\n";
echo "<table width='500' border='0' celpadding='0' cellspacing='0' bgcolor='#000000'>\n";
echo "  <tr>\n";
echo "    <td>\n";
echo "      <table width='100%' height='100%' border='0' celpadding='0' cellspacing='0'>\n";
echo "        <TR>\n";
echo "          <TD bgcolor='#CFCFCF' VALIGN=TOP>\n";
echo "            <center><a href='tagwall.php'>Tilbage</A>\n";
echo "          </TD>\n";
echo "        </TR>\n";
echo "      </TABLE>\n";
echo "    </td>\n";
echo "  </tr>\n";
echo "</table>\n";
echo "</CENTER>\n";
echo "</BODY>\n";
echo "</HTML>\n";
}
?>
Avatar billede ohmish Nybegynder
08. marts 2003 - 15:55 #1
et par rettelser:

$db = @mysql_connect("jolly","root","050684");
@mysql_select_db("gbog");
mysql_query("UPDATE bog SET nr = '$nr', besked='$besked' ") or die (mysql_error();

du kan evt. fjerne "or die"-tingen... det var så du ku se hva der går galt.
Avatar billede ohmish Nybegynder
08. marts 2003 - 16:00 #2
eller:

$db = @mysql_connect("jolly","root","050684");
@mysql_select_db("gbog");
mysql_query("UPDATE bog SET besked='$besked' WHERE nr='$nr' ") or die (mysql_error();
Avatar billede jolly_jay Nybegynder
08. marts 2003 - 16:01 #3
1000 tak nu virker det :D
Avatar billede jolly_jay Nybegynder
08. marts 2003 - 16:02 #4
med denne:
$db = mysql_connect("jolly","root","050684");
mysql_select_db("gbog",$db);
$besked = str_replace("\n","<br>",$besked);
mysql_query("UPDATE bog SET besked='$besked' WHERE nr='$nr' ");
mysql_close;
header('Location: tagwall.php');
Avatar billede ohmish Nybegynder
08. marts 2003 - 16:13 #5
det er kun med INSERT man bruger VALUES.. med UPDATE hedder det SET noget='$noget'.
Avatar billede ohmish Nybegynder
08. marts 2003 - 16:14 #6
selv tak :)
Avatar billede jolly_jay Nybegynder
08. marts 2003 - 16:20 #7
okay, det skal jeg huske..
Avatar billede ohmish Nybegynder
08. marts 2003 - 17:54 #8
en anden nyttig ting er:
hvis du vil undgår at folk får evt. mysql fejlmeddelelser, skriver du bare @ foran alle dine db-kommandoer.

f.eks:
$db = @mysql_connect("jolly","root","050684");
@mysql_select_db("gbog");

hvis du vil gi dem en pænere fejl, ka du skrive:

$db = @mysql_connect("jolly","root","050684");
@mysql_select_db("gbog") or die ("fejl ved forbindelse til serveren/databasen");
Avatar billede jolly_jay Nybegynder
08. marts 2003 - 18:10 #9
ok, tak.

men det er måske for sent menhvordn opdater man flere felter?
mysql_query("UPDATE bog SET (bla, bla2, bla3) = ($bla, $bla2, $bla3) WHERE nr='$nr' "); ?
Avatar billede ohmish Nybegynder
08. marts 2003 - 18:44 #10
SET bla='$bla', blu='$blu, ble='$ble' WHERE blø='$blå'

hehe
Avatar billede staf Nybegynder
08. marts 2003 - 18:46 #11
Bare en lille kommentar!
Istedet for alle de "echo" statements, ville det da være nemmere at gå ind og ud af php, når du bygger din html op :)
Avatar billede ohmish Nybegynder
08. marts 2003 - 18:58 #12
eller lav én stor echo.
Avatar billede jolly_jay Nybegynder
08. marts 2003 - 19:48 #13
tjoo det ville det nok, jeg har ændret det.
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