13. oktober 2003 - 23:19
Der er
45 kommentarer og 1 løsning
At hente $id hele vejen rundt
Hej eksperter jeg har et update system som jeg gerne vil have skal køre efter det id man skriver i urlen. altså update.php?id=2 f.eks Jeg har den første fil her: <? session_start(); ?> <?php include("db.php"); $result9 = mysql_query("SELECT * FROM film_frontmovie1 WHERE id=$id"); $row9 = mysql_fetch_array($result9); ?> <DIV STYLE='text-align:center'> <form action='retokmovie1.php?id=$id' method='POST'> <FONT FACE='Verdana' SIZE='1' COLOR='#000000'> <BR> <b>Overskrift :</b><br> <input type="text" class="texter" name="overskrift" value="<? echo $row9['overskrift']; ?>"><br> <b>Anmeldelse :</b><br> <input type="text" class="texter" name="anmeldelse" value="<? echo $row9['anmeldelse']; ?>"><br> <b>PIC :</b><br> <input type="text" class="texter" name="pic" value="<? echo $row9['pic']; ?>"><br> <b>Højde :</b><br> <input type="text" class="texter" name="heigt" value="<? echo $row9['height']; ?>"><br> <b>Brede :</b><br> <input type="text" class="texter" name="width" value="<? echo $row9['width']; ?>"><br> <INPUT TYPE="submit" VALUE="Opdater Profil" CLASS="knap"> </form> </BODY> </HTML> Og den anden fil her <? session_start(); ?> <?php include("db.php"); $result3 = mysql_query("SELECT * FROM film_frontmovie1 WHERE id=$id"); $row = mysql_fetch_array($result3); $id = $row['id']; mysql_query("UPDATE film_frontmovie1 set overskrift = '$overskrift' WHERE id='$id' "); mysql_query("UPDATE film_frontmovie1 set anmeldelse = '$anmeldelse' WHERE id='$id' "); mysql_query("UPDATE film_frontmovie1 set pic = '$pic' WHERE id='$id' "); mysql_query("UPDATE film_frontmovie1 set height = '$height' WHERE id='$id' "); mysql_query("UPDATE film_frontmovie1 set width = '$width' WHERE id='$id' "); echo "<FONT FACE=Verdana SIZE=1 COLOR=#000000>Vent Opdater Info...</FONT>"; ?> <script> location.href = 'retmovie1.php?id=$id'; </script> </tr> </table> </BODY> </HTML> Hvad er det der skal laves om så det virker? For lige nu henter ikke "id´en" 100% med hele vejen rundt. Kun på første side! 150 point til den der kan løse problemmet!
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
13. oktober 2003 - 23:23
#1
evt; $result9 = mysql_query('SELECT * FROM film_frontmovie1 WHERE id = ' . $_GET['id']);
13. oktober 2003 - 23:27
#2
og den anden bliver så noget hen i retningen af; $result3 = mysql_query('SELECT * FROM film_frontmovie1 WHERE id = ' $_GET['id']); En god ide ville dog nok være i starten lige at tjekke på om der overhovedet kommer noget input.. Altså med noget hen i retningen af: <? if (!isset($_GET['id'])) { // en default ting her, så som fx en header('EnAndenSideITilfædeAfManglendeId'); eller en $id = 1; og så en lille ændring i queryen så den i stedet tager imod id igen exit; } ?>
13. oktober 2003 - 23:48
#3
din UPDATE sætning kan skrives mere optimalt som UPDATE tabel SET felt1=noget, felt2=noget_andet WHERE id=et_id
14. oktober 2003 - 00:08
#4
jeg ser lige om det virker!
14. oktober 2003 - 00:10
#5
det ladet ikke til at funke. den kommer med fejlen. Parse error: parse error in retokmovie1.php on line 6
14. oktober 2003 - 00:17
#6
har du prøvet at rette hele vejen ned som jeg beskrev.. altså med $_GET['id'] Tror sku det ville virke.. Altså noget lignende: mysql_query('UPDATE film_frontmovie1 set width = \'' . $width . '\' WHERE id = ' . $_GET['id']); Prøv at rette således hele vejen ned..
14. oktober 2003 - 00:19
#7
altså alle steder hvor der står noget med id skal jeg skriver $_GET['id']);
Slettet bruger
14. oktober 2003 - 00:20
#8
sikkert :)
14. oktober 2003 - 00:23
#9
den går hend og laver fejl
14. oktober 2003 - 00:24
#10
den går slet ikke ind og henter oplysningerne ned mere!
14. oktober 2003 - 00:25
#11
der skete noget der. Ny fejl Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in retokmovie1.php on line 6
14. oktober 2003 - 00:27
#12
den tager ikke id´et med i url´en. det er det som går galt!
Slettet bruger
14. oktober 2003 - 00:36
#13
hvad dag er det idag?
14. oktober 2003 - 09:59
#14
Du skriver at der skal bruges POST i formen, men vil hente via en GET??? Hvis nu du lader være med at bruge id'et i url'en, og laver et hiddenfelt istedet: <form action='retokmovie1.php' method='POST'> <input type="hidden" name="id" value="<? echo $row9['id']; ?>"> <FONT FACE='Verdana' SIZE='1' COLOR='#000000'> <BR> <b>Overskrift :</b><br> <input type="text" class="texter" name="overskrift" value="<? echo $row9['overskrift']; ?>"><br> <b>Anmeldelse :</b><br> <input type="text" class="texter" name="anmeldelse" value="<? echo $row9['anmeldelse']; ?>"><br> <b>PIC :</b><br> <input type="text" class="texter" name="pic" value="<? echo $row9['pic']; ?>"><br> <b>Højde :</b><br> <input type="text" class="texter" name="heigt" value="<? echo $row9['height']; ?>"><br> <b>Brede :</b><br> <input type="text" class="texter" name="width" value="<? echo $row9['width']; ?>"><br> <INPUT TYPE="submit" VALUE="Opdater Profil" CLASS="knap"> I din retokmovie1.php mysql_quey("UPDATE film_frontmovie1 set overskrift = '". $_POST["overskrift"] ."', anmeldelse = '". $_POST["anmeldelse"] ."', pic = '". $_POST["pic"] ."' WHERE id = '". $_POST["id"] ."'") or die (mysql_error()); Og så ville jeg nok bruge getimagesize() til at finde str. på pic, når det er nødvendigt.
c
Nybegynder
14. oktober 2003 - 10:34
#15
du skal lave et hidden felt i din form på første side som har navnet id, og value sat til $id mvh Chistian
14. oktober 2003 - 14:41
#16
fejl i linje 6 <? session_start(); ?> <?php include("db.php"); $result3 = mysql_query('SELECT * FROM film_frontmovie1 WHERE id = ' $_GET['id']); $row = mysql_fetch_array($result3); $id = $row['id']; mysql_quey("UPDATE film_frontmovie1 set overskrift = '". $_POST["overskrift"] ."', anmeldelse = '". $_POST["anmeldelse"] ."', pic = '". $_POST["pic"] ."' WHERE id = '". $_POST["id"] ."'") or die (mysql_error()); echo "<FONT FACE=Verdana SIZE=1 COLOR=#000000>Vent Opdater Info...</FONT>"; ?> <script> location.href = 'retmovie1.php?id= ' $_GET['id']); </script> </tr> </table> </BODY> </HTML>
14. oktober 2003 - 14:41
#17
Parse error: parse error in /usr/local/psa/home/vhosts/gex.dk/httpdocs/kim/ny556/adm2/retokmovie1.php on line 6
14. oktober 2003 - 14:45
#18
$result3 = mysql_query("SELECT * FROM film_frontmovie1 WHERE id = '". $_POST["id"] ."'");
14. oktober 2003 - 14:47
#19
Hmm, hvorfor laver du en SELECT query? Det er jo ikke nødvendigt for at indsætte i DB'en
14. oktober 2003 - 14:51
#20
den skulle underligt nok på for at det skulle virke standart. altså uden at hente id´et men hvor man bare bruger where id = 1 f.eks Jeg prøver lige det der
14. oktober 2003 - 14:54
#21
Fatal error: Call to undefined function: mysql_quey() in /usr/local/psa/home/vhosts/gex.dk/httpdocs/kim/ny556/adm2/retokmovie1.php on line 9
14. oktober 2003 - 14:58
#22
mysql_query()
14. oktober 2003 - 15:00
#23
hvad mener du med det?
14. oktober 2003 - 15:01
#24
mysql_query("UPDATE film_frontmovie1 set overskrift = '". $_POST["overskrift"] ."', anmeldelse = '". $_POST["anmeldelse"] ."', pic = '". $_POST["pic"] ."' WHERE id = '". $_POST["id"] ."'") or die (mysql_error());
14. oktober 2003 - 15:02
#25
Altså et manglende r i query! :O)
14. oktober 2003 - 15:03
#26
ahh ;) tjekker lige om det virker
14. oktober 2003 - 15:05
#27
sådan nu ingen fejl men nu skriver den bare vent opdatere profil. Men der sker ikke mere. Og infoen bliver ikke opdateret i min mysql!
14. oktober 2003 - 15:06
#28
<? session_start(); ?> <?php include("db.php"); $result3 = mysql_query("SELECT * FROM film_frontmovie1 WHERE id = '". $_POST["id"] ."'"); $row = mysql_fetch_array($result3); $id = $row['id']; mysql_query("UPDATE film_frontmovie1 set overskrift = '". $_POST["overskrift"] ."', anmeldelse = '". $_POST["anmeldelse"] ."', pic = '". $_POST["pic"] ."' WHERE id = '". $_POST["id"] ."'") or die (mysql_error()); echo "<FONT FACE=Verdana SIZE=1 COLOR=#000000>Vent Opdater Info...</FONT>"; ?> <script> location.href = 'retmovie1.php?id= ' $_GET['id']); </script> </tr> </table> </BODY> </HTML>
14. oktober 2003 - 15:09
#29
Prøv: <? session_start(); include("db.php"); // DU connecter og vælger vel DB i db.php??? if(isset($_POST["id"])) { //Husk at lave et hidden felt som hedder id!!!! mysql_query("UPDATE film_frontmovie1 set overskrift = '". $_POST["overskrift"] ."', anmeldelse = '". $_POST["anmeldelse"] ."', pic = '". $_POST["pic"] ."' WHERE id = '". $_POST["id"] ."'") or die (mysql_error()); echo "<FONT FACE=Verdana SIZE=1 COLOR=#000000>Vent Opdater Info...</FONT>"; }else{ echo"Ingen POST id er sat!!!!!"; } ?>
14. oktober 2003 - 15:13
#30
stadig det samme
14. oktober 2003 - 15:14
#31
Min kode ser sådan her ud nu: Retmovie1.php <HTML> <HEAD> </HEAD> <BODY> <?php include("db.php"); $result9 = mysql_query("SELECT * FROM film_frontmovie1 WHERE id=$id"); $row9 = mysql_fetch_array($result9); ?> <form action='retokmovie1.php' method='POST'> <input type="hidden" name="id" value="<? echo $row9['id']; ?>"> <FONT FACE='Verdana' SIZE='1' COLOR='#000000'> <BR> <b>Overskrift :</b><br> <input type="text" class="texter" name="overskrift" value="<? echo $row9['overskrift']; ?>"><br> <b>Anmeldelse :</b><br> <input type="text" class="texter" name="anmeldelse" value="<? echo $row9['anmeldelse']; ?>"><br> <b>PIC :</b><br> <input type="text" class="texter" name="pic" value="<? echo $row9['pic']; ?>"><br> <b>Højde :</b><br> <input type="text" class="texter" name="heigt" value="<? echo $row9['height']; ?>"><br> <b>Brede :</b><br> <input type="text" class="texter" name="width" value="<? echo $row9['width']; ?>"><br> <INPUT TYPE="submit" VALUE="Opdater Profil" CLASS="knap"> Retokmovie1.php <? session_start(); include("db.php"); if(isset($_POST["id"])) { //Husk at lave et hidden felt som hedder id!!!! mysql_query("UPDATE film_frontmovie1 set overskrift = '". $_POST["overskrift"] ."', anmeldelse = '". $_POST["anmeldelse"] ."', pic = '". $_POST["pic"] ."' WHERE id = '". $_POST["id"] ."'") or die (mysql_error()); echo "<FONT FACE=Verdana SIZE=1 COLOR=#000000>Vent Opdater Info...</FONT>"; }else{ echo"Ingen POST id er sat!!!!!"; } ?>
14. oktober 2003 - 15:16
#32
det henter ikke id´et med over. Det er der det største problem ligger ville jeg mene!
14. oktober 2003 - 15:18
#33
Hvad står der for hiddenfeltet hvis du bruger "Vis kilde" Og hvordan definerer du id i denne sætning: <?php include("db.php"); $result9 = mysql_query("SELECT * FROM film_frontmovie1 WHERE id=$id"); //$id? Hvilken? POST eller GET? $row9 = mysql_fetch_array($result9); ?>
14. oktober 2003 - 15:21
#34
jeg går jo ind på en url som hedder retmovie1.php?id=1 eller hvilke id man nu vil rette. Og det er jo så det den kode gør. Og hvis jeg køre hvis kilde skriver den "1" hvis det er det id jeg har valgt <input type="hidden" name="id" value="1">
14. oktober 2003 - 15:25
#35
Så burde dette også virke <? session_start(); include("db.php"); if(isset($_POST["id"])) { //Husk at lave et hidden felt som hedder id!!!! mysql_query("UPDATE film_frontmovie1 set overskrift = '". $_POST["overskrift"] ."', anmeldelse = '". $_POST["anmeldelse"] ."', pic = '". $_POST["pic"] ."' WHERE id = '". $_POST["id"] ."'") or die (mysql_error()); echo "<FONT FACE=Verdana SIZE=1 COLOR=#000000>Vent Opdater Info...</FONT>"; }else{ echo"Ingen POST id er sat!!!!!"; } ?>
14. oktober 2003 - 15:27
#36
Du kan osse prøve denne: <? session_start(); include("db.php"); if(isset($_POST["id"])) { if(trim($_POST["id"]) !="") { mysql_query("UPDATE film_frontmovie1 set overskrift = '". $_POST["overskrift"] ."', anmeldelse = '". $_POST["anmeldelse"] ."', pic = '". $_POST["pic"] ."' WHERE id = '". $_POST["id"] ."'") or die (mysql_error()); echo "<FONT FACE=Verdana SIZE=1 COLOR=#000000>Vent Opdater Info...</FONT>"; }else{ echo"ID er TOM!"; } }else{ echo"Ingen POST id er sat!!!!!"; } ?>
14. oktober 2003 - 15:29
#37
prøver
14. oktober 2003 - 15:30
#38
nej den går slet ikke ind og opdatere!
14. oktober 2003 - 15:31
#39
når jeg trykker opdatere så går den jo bare videre til linket retokmovie1.php skal den ikke på en måde gå videre til retokmovie1.php?id=1 ?
14. oktober 2003 - 15:31
#40
for så kunne man bare bruge noget aka samkke funktioner som i retmovie1.php
14. oktober 2003 - 15:34
#41
Kan jeg ikke lave en! <form action='retokmovie1.php?id=$id' method='POST'> På en måde? som virker. for den der henter ikke id´et med over på den anden!
14. oktober 2003 - 15:35
#42
Hmm, hvilken version af PHP ligger der på serveren? Er det mindre end 4.1.0 (mener jeg) kan du ikke bruge $_POST, men skal bruge $HTTP_POST_VARS Vers. kan du evt. se med en <? phpinfo(); ?> loadet i din browser
14. oktober 2003 - 15:41
#43
Ok, prøv denne: <? session_start(); include("db.php"); if(isset($HTTP_POST_VARS["id"])) { mysql_query("UPDATE film_frontmovie1 set overskrift = '". $HTTP_POST_VARS["overskrift"] ."', anmeldelse = '". $HTTP_POST_VARS["anmeldelse"] ."', pic = '". $HTTP_POST_VARS["pic"] ."' WHERE id = '". $HTTP_POST_VARS["id"] ."'") or die (mysql_error()); header("Location:retmovie.php?id=". $HTTP_POST_VARS["id"] .""); exit; }else{ echo"Ingen POST id er sat!!!!!"; } ?>
14. oktober 2003 - 16:31
#44
Yess. rodede selv lidt med det, og tjekkede de koder ud du havde skrevet og fik det så til at virke. Mange tak for det. SUkos, du får 200 point for den tapre indsats ;)
14. oktober 2003 - 17:56
#45
Det er jo fint at du har fået det til at virke!
14. oktober 2003 - 23:47
#46
men takker
Vi tilbyder markedets bedste kurser inden for webudvikling