Avatar billede rampagezz Nybegynder
25. februar 2004 - 02:34 Der er 11 kommentarer og
2 løsninger

Ændre værdi i tabel fra en anden tabel.

Hej eksperten..

Jeg har tidligere oprettet et spørgsmål herinde om hvordan jeg kunne ændre en værdi i database fra en anden, hvor jeg fik at vide at jeg skulle bruge UPDATE funktionen.
Men jeg har prøvet at indsætte den, hvor den skriver at der er en fejl. (tror jeg mangler at indlæse tabel-oplysningerne for den ene...

Nu har jeg prøvet at skrive sådan her:


<?php require_once('../Connections/goaforum.php'); ?>
<?php
mysql_select_db($database_goaforum, $goaforum);
$query_bingoplader = "SELECT * FROM bingoplader";
$bingoplader = mysql_query($query_bingoplader, $goaforum) or die(mysql_error());
$row_bingoplader = mysql_fetch_assoc($bingoplader);
$totalRows_bingoplader = mysql_num_rows($bingoplader);

mysql_select_db($database_goaforum, $goaforum);
$query_Recordsettal = "SELECT * FROM bingotal";
$Recordsettal = mysql_query($query_Recordsettal, $goaforum) or die(mysql_error());
$row_Recordsettal = mysql_fetch_assoc($Recordsettal);
$totalRows_Recordsettal = mysql_num_rows($Recordsettal);

mysql_query("UPDATE bingoplader,bingotal SET bingoplader.kryds1 = 'kryds.jpg' WHERE bingoplader.felt1 = bingotal.tal") or die(mysql_error());

?>

------------------------------
Kan i ikke hjælpe mig...

- Rampagezz
Avatar billede rampagezz Nybegynder
25. februar 2004 - 02:36 #1
Jeg glemte at sige, at som det står nu. Skriver den fejlen:

You have an error in your SQL syntax near 'bingotal SET bingoplader.kryds1 = 'kryds.jpg' WHERE bingoplader.felt1 = bingotal' at line 1
Avatar billede tjp Mester
25. februar 2004 - 03:54 #2
Der kan kun stå én tabel efter UPDATE, derfor syntaksfejl.
Avatar billede tjp Mester
25. februar 2004 - 04:09 #3
Ups, fra MySQL Version 4.0.4 og frem, kan der godt stå flere tabeller!
Hvilken version bruger du?
Avatar billede rampagezz Nybegynder
25. februar 2004 - 22:34 #4
Jeg har sitet oppe hos en anden, som har en tidligere version, og ikke vil opdatere den pga. stabilitet. Er der ikke andre muligheder for at løse mit problem..?
Avatar billede rampagezz Nybegynder
25. februar 2004 - 22:38 #5
Nu er jeg ikke php haj, men kan man ikke skrive noget ala:

if ($felt1 == $tal) {
mysql_query("UPDATE bingoplader SET bingoplader.kryds1 = 'kryds.jpg'") or die(mysql_error());
}
?>            (det er nok skrevet forkert)

for den skal jo kun opdatere den ene tabel (bingoplader)
Avatar billede tjp Mester
26. februar 2004 - 01:23 #6
Brug ikke UPDATE uden WHERE medmindre feltet skal ændres i alle poster!!!

Hvad med noget lignende:

while ($row = mysql_fetch_array($Recordsettal, MYSQL_ASSOC)) {
  $tal = $row["tal"];
  mysql_query("UPDATE bingoplader SET bingoplader.kryds1 = 'kryds.jpg' WHERE bingoplader.felt1 = '$tal'") or die(mysql_error());

}
Avatar billede rampagezz Nybegynder
29. februar 2004 - 06:19 #7
Den virker ikke helt.. Jeg har prøvet at indsætte dit script, men nu skriver den:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result

Den har ændret værdien i to records, men ikke i andre.

Har du nogle andre forslag eller en svar på hvad det kan være.?
Avatar billede rampagezz Nybegynder
29. februar 2004 - 17:24 #8
tjp> Har du fået dine point...? Du har ihvert fald fortjent dem, for det virkede. Jeg skulle bare lave et recordset fra databasen. Tak for hjælpen.
Avatar billede tjp Mester
02. marts 2004 - 04:04 #9
rampagezz> Velbekomme, men nej, jeg har ikke fået nogen point. Har du husket at acceptere svaret?
Avatar billede rampagezz Nybegynder
02. marts 2004 - 08:03 #10
Jeg startede med at afvise... Og så accepterede jeg, men kom med et nyt svar så skal jeg acceptere... :-)
Avatar billede tjp Mester
02. marts 2004 - 12:55 #11
Nyt svar! *S*
Avatar billede rampagezz Nybegynder
02. marts 2004 - 15:03 #12
Så virkede det..
Avatar billede tjp Mester
03. marts 2004 - 00:24 #13
Takker! :)
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