Avatar billede flashback83 Nybegynder
28. marts 2003 - 11:29 Der er 10 kommentarer og
1 løsning

updatere i MySQL-tabel

Jeg får følgende meddelelse, når jeg opdaterer:
You have an error in your SQL syntax near 'by='',tlf='0',tlfarb='0',email='' WHERE id='1'' at line 1

...men jeg kan ikke finde fejlen. Jeg har efterhånden stirret mig blind på det, men måske et par friske øjne kunne fange fejlen.
Min kode ser sådan ud:
<?php
         
             
              if($_SESSION['admin']){
                 
                $db = mysql_connect("localhost", "root"); //opretter forbindelse til serveren
              mysql_select_db("scr", $db); //vaelger databasen
              $result = mysql_query("SELECT * FROM bestyrelsen ORDER BY id"); //vaelger fra tabellen "annonce" og sorterer efter id
              while($adresse = mysql_fetch_row($result)) {
                 
                  echo"
         

              <form name=adresse method=post action=opdaterbestyrelsen.php?id=$adresse[0]>
        <table>
          <tr>
            <td class=info>$adresse[8]</td>
          </tr>
          <tr>
            <td colspan=2>Navn:<input type=text name=navn value='$adresse[1]'></td>
          </tr>
          <tr>
            <td colspan=2>Adresse:<input type=text name=adresse value='$adresse[2]'></td>
          </tr>
          <tr>
            <td>Postnr:<input type=text name=postnr value='$adresse[3]'></td>
          <tr>
            <td>By:<input type=text name=by value='$adresse[4]'></td>
          </tr>
          </tr>
          <tr>
            <td>Tlf:<input type=text name=tlf value='$adresse[5]'></td>
          </tr>
          <tr>
            <td>Arbejdstelefon:<input type=text name=tlfarb value='$adresse[6]'></td>
          </tr>
          <tr>
            <td>Email:<input type=text name=email value='$adresse[7]'></td>
          </tr>
          <tr>
            <td><input type=submit name=submit value=Ret person></td>
          </tr>
        </table>
        ";
        }
    }
          ?>
              <?php

              $db = mysql_connect("localhost", "root"); //opretter forbindelse til serveren
              mysql_select_db("scr", $db); //vµlger databasen
              $result = mysql_query("SELECT * FROM bestyrelsen ORDER BY id"); //vµlger fra tabellen "annonce" og sorterer efter id
              while($adresse = mysql_fetch_row($result))

              {
         
                  ?>

og opdaterbestyrelsen.php:

<? session_start(); ?>
<?php

$navn==$navn;
$adresse==$adresse;
$postnr==$postnr;
$by==$by;
$tlf==$tlf;
$tlfarb==$tlfarb;
$email==$email;

$db = mysql_connect("localhost", "root");
mysql_select_db("scr",$db);

  mysql_query("update bestyrelsen set navn='$navn',adresse='$adresse',postnr='$postnr',by='$by',tlf='$tlf',tlfarb='$tlfarb',email='$email' WHERE id='$id'")or die (mysql_error());
       
   
?>

Håber nogen kan hjælpe, for jeg er kørt helt fast.

Rasmus
Avatar billede barlach Nybegynder
28. marts 2003 - 11:32 #1
jeg mener by er et reserveret ord. Brug hellere city
Avatar billede barlach Nybegynder
28. marts 2003 - 11:35 #2
eller også er det fordi din $by er tom
Avatar billede lauer Nybegynder
28. marts 2003 - 11:35 #3
mysql_query("update bestyrelsen set navn='$navn',adresse='$adresse',postnr='$postnr',`by`='$by',tlf='$tlf',tlfarb='$tlfarb',email='$email' WHERE id='$id'")or die (mysql_error());
Avatar billede flashback83 Nybegynder
28. marts 2003 - 11:39 #4
Det virkede! Takker mange gange...
Rasmus
Avatar billede lauer Nybegynder
28. marts 2003 - 11:40 #5
Hvorfor afviser du så mit svar?
Avatar billede flashback83 Nybegynder
28. marts 2003 - 11:41 #6
I burde få pointene begge to! Er helt ny på eksperten, så ved ikke rigtig hvad mulighederne er - Kan man overføre point?
Avatar billede barlach Nybegynder
28. marts 2003 - 11:41 #7
hvilke svar virkede??
Avatar billede lauer Nybegynder
28. marts 2003 - 11:43 #8
Tja, der er 2 løsninger, enten gjorde du som barlach sagde, ændre feltnavnet til city, ellers sætter du `` rundt om feltnavnet, for at fortælle at det er et navn på et felt, og ikke en funktion.

Og så beder du barlach om at ligge et svar hvis du brugte hans mulighed, eller du acceptere mit svar, hvis det bruge den SQL jeg gav.
Avatar billede avminarm Juniormester
28. marts 2003 - 11:48 #9
man bør ikke bruge "by" - da det er et reserveret ord i SQL
Avatar billede barlach Nybegynder
28. marts 2003 - 12:12 #10
...
Avatar billede flashback83 Nybegynder
28. marts 2003 - 12:13 #11
I det tilfælde må det blive barlach, der får pointene, eftersom jeg prøvede hans først, og det strengt taget ikke er god "programmeringstone" at bruge 'by'...

Tak for hjælpen til alle!
Rasmus
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