<?php if (!isset($send)) { ?> Tilføj Varegruppe<br> <form action=<?php $php_self ?> method=post> Navn på gruppen:<br> <input type=text name=group size=30 maxlength=30><br> <input type=submit name=send> </form> <?php include ("config.php"); } else { $result = mysql_query("SELECT * FROM groups WHERE group = 'group'") or die(mysql_error()); if (!$result) { $result = mysql_query("INSERT INTO groups SET group = '$group'") or die(mysql_error()); if (!$result) { echo "Prøv venligst igen."; } else { echo "Gruppen "$group" er nu oprettet"; } } } else { echo "Gruppen "$group" eksisterer allerede."; } } ?>
erikjacobsen det virker :) Tak skal du ha'. Smid et svar så får du poiny :)
Men får en ny fejl nu og kan ikke lige huske hvordan det er man bruger variabler i sætninger: Parse error: parse error, expecting `','' or `';'' in c:\apache\htdocs\webstore\opret_gruppe.php on line 19
Nu har jeg delt filerne op således: opret.php: Tilføj Varegruppe<br> <form action=opret_gruppe.php method=post> Navn på gruppen:<br> <input type=text name=group size=30 maxlength=30><br> <input type=submit name=send> </form>
opret_gruppe.php: <?php include ("config.php"); $result = mysql_query("SELECT * FROM groups WHERE group = ’$group’"); if (!$result) { $result = mysql_query("INSERT INTO groups SET group = ‘$group’"); if (!$result) { echo "Prøv venligst igen."; } else { echo "Gruppen ".$group." er nu oprettet"; } } else { echo "Gruppen ".$group." eksisterer allerede."; } ?>
Problemet er den bliver ved med at vise "Prøv venligst igen" istedet for at oprette en gruppe. Hvad kan dette skyldes?
include ("config.php"); } else { $result = mysql_query("SELECT * FROM groups WHERE group = '$group'") or die(mysql_error()); if (!$result) { $result = mysql_query("INSERT INTO groups SET group = '$group'") or die(mysql_error()); if (!$result) { echo "Prøv venligst igen."; } else { echo "Gruppen ".$group." er nu oprettet"; } } } else { echo "Gruppen ".$group." eksisterer allerede."; } } ?>
Synes godt om
Slettet bruger
28. juni 2005 - 14:21#9
opret_gruppe.php: $result = mysql_query("SELECT * FROM groups WHERE group = ’$group’");
ved ikke om det er meningen kun med 1 `=´ prøv med 2...
Hmm virker stadig ikke. Prøvede også lige at sætte or die(mysql_error()) på og den viste fejlen: You have an error in your SQL syntax near 'group = ’' at line 1
du bruger stadig ’ når du skal bruge ' tag denne kode:
<?php $group = $_POST['group'];
include ("config.php"); } else { $result = mysql_query("SELECT * FROM groups WHERE group = '$group'") or die(mysql_error()); if (!$result) { $result = mysql_query("INSERT INTO groups SET group = '$group'") or die(mysql_error()); if (!$result) { echo "Prøv venligst igen."; } else { echo "Gruppen ".$group." er nu oprettet"; } } } else { echo "Gruppen ".$group." eksisterer allerede."; } } ?>
Tilføj Varegruppe<br> <form action="opret_gruppe.php" method="post"> Navn på gruppen:<br> <input type="text" name="group" size="30" maxlength="30"><br> <input type="submit" name="send"> </form>
opret_gruppe.php <?php $group = $_POST['group']; include ('config.php');
$result = mysql_query("SELECT * FROM groups WHERE group = '$group'") or die(mysql_error()); if( $row = mysql_fetch_array($result)){ echo "Gruppen ".$group." eksisterer allerede."; } else{ $result = mysql_query("INSERT INTO groups SET group = '$group'") or die(mysql_error()); echo "Gruppen ".$group." er nu oprettet"; } ?>
nej... har fundet fejlen! du må ikke kalde feltet group, da det er et reserveret ord i php.
Brug denne kode:
<?php $group = $_POST['group']; include ('filer/connect_universet.php');
$result = mysql_query("SELECT * FROM groups WHERE gruppe = '$group'") or die(mysql_error()); if (mysql_num_rows($result)>0) { echo "Gruppen ".$group." eksisterer allerede."; } else{ $result = mysql_query("INSERT INTO groups SET gruppe = '$group'") or die(mysql_error()); echo "Gruppen ".$group." er nu oprettet"; } ?>
Bare en kort bemærkning: group er ikke et reserveret ord i PHP men i MySQL. Samme fejl oplever man, hvis man prøver at bruge nogle af de andre reserverede ord som feltnavne i databasen. Jeg er f.eks. blevet bidt af "by" og "desc".
Man kan komme uden om problemet ved at sætte ` om feltnavnene, som i SELECT `group` FROM tabel
Undskyld jeg var lidt længe om det gil-galad men har ikke lige været hjemme. Men tak endnu en gang :) Os til dig erik ;)
Det vidste jeg ikke sandbox :) Godt a vide til en anden gang.
Synes godt om
Ny brugerNybegynder
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.