/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Problem med PHP og MYSQL
Fra : Ole


Dato : 20-12-04 22:35

Hej

Jeg har flyttet et PHP/MYSQL baseret system fra en server med MYSQL
2.3.2 til en server med MYSQL 2.5.7.

På den nye server kan jeg godt indsætte rækker i databasen vha.
PHPMYADM, men flg. php-script kan kun læse fra tabellen, men ikke
skrive.

----------------------------------------------------

<?
   $db = mysql_connect("localhost", "brugernavn", "password");
   mysql_select_db("database", $db);   
   
   if ($slet)
   {
      mysql_query("DELETE FROM author where id = '$id'");
   }
   
   if ($opret)
   {
      mysql_query("INSERT INTO author (navn, nr) VALUES ('$navn','$nr')");
   }
   
   if ($ret)
   {
      mysql_query("UPDATE author set navn = '$navn', nr = '$nr' where id
= '$id'");
   }   
   
   echo "<FORM action=author.php method=post>
      <table><tr><td>
      Ny fotograf:<br>
      <input name=navn maxlength=80>
      <input type=hidden value=99 name=nr>
      <input type=submit name=opret value=Opret>
      </td></tr></table>
      </FORM>";

   echo "<table>";
   echo "<tr><td>Fotograf</td><td>Prioritet</td><td>Action</td></tr>";
   $foresp = mysql_query("SELECT id, navn, nr FROM author ORDER BY nr
asc");
   while($data = mysql_fetch_array($foresp))
   {
      echo "<FORM action=author.php method=post>";
      echo "<tr><td><input type=hidden name=id value=" . $data[0] . ">";
      echo "<input name=navn maxlength=80 value=\"" . $data[1] .
"\"></td>";
      echo "<td><input name=nr maxlength=2 size=2 value=\"" . $data[2] .
"\"></td>";
      echo "<td><input type=submit name=ret value=Ret>";
      echo "<input type=submit name=slet value=Slet></td></tr>";
      echo "</FORM>";   
   }
   echo "</table>";

?>

----------------------------------------

Håber I kan hjælpe mig med problemet.

Mvh

Ole

 
 
Peter Brodersen (20-12-2004)
Kommentar
Fra : Peter Brodersen


Dato : 20-12-04 23:54

On 20 Dec 2004 13:35:06 -0800, ole@atomb.dk (Ole) wrote:

>Jeg har flyttet et PHP/MYSQL baseret system fra en server med MYSQL
>2.3.2 til en server med MYSQL 2.5.7.

Det er nok versionen af phpMyAdmin, du ser her - ikke versionen af
MySQL-serveren.

>På den nye server kan jeg godt indsætte rækker i databasen vha.
>PHPMYADM, men flg. php-script kan kun læse fra tabellen, men ikke
>skrive.

Det skyldes sandsynligvis, at webserveren er sat op med funktionen
"register_globals" deaktiveret. Sådan leveres alle nye versioner af
PHP.

Det betyder, at du fx ikke kan bruge $id, $navn, $nr, $opret, etc.
uden videre - altså variable, der bliver sendt fra brugeren. I stedet
skal du tilgå fx $_REQUEST['id'] , $_REQUEST['navn'] og så fremdeles.
Du kan læse lidt om ændringerne på:
http://www.php.net/manual/en/language.variables.external.php

Prøv at tilføje fx:

$slet = $_REQUEST['slet'];
$opret = $_REQUEST['opret'];
$ret = $_REQUEST['ret'];
$id = $_REQUEST['id'];
$navn = $_REQUEST['navn'];
$nr = $_REQUEST['nr'];

... i starten af scriptet.

--
- Peter Brodersen

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408924
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste