Halløj. Jeg har et problem med min side, kan ikke oprette brugere.. Når alt er udfyldt og jeg trykker Opret, opdater siden bare og der sker intet.. den skriver ingen fejl eller noget som helst.. Hvis jeg opretter en bruger i databasen virker det fint..? Det har virket før, men er efterhånden et gammelt system.. Kode:
<table id="sidetop" align="center" cellpadding="2" cellspacing="0"> <tr> <td valign="top" style="font-size: 16px;font-weight: bold;"> » Oprettelse af ny bruger </td></tr> </table> <br> <table border="0" cellspacing="0" cellpadding="0"> <tr><td> <b>Læs venligts dette, inde du opretter en bruger i vores system:</b><br> <i>Det er vigtigt at du oplyser en korrekt og gyldig e-mail adresse, da vi skal kunne have kontakt til dig!</i> </td></tr> </table> <br> <?php if($_POST['submit']){ include("../connect.php"); if (eregi("[^a-z0-9] ",$_POST[brugernavn])) { echo "<b><font color=red>Fejlkode:</font> Brugernavnet indeholder ulovlige tegn eller andet!</b><br>"; }else{ if($_POST[fornavn] == "") { echo("<b><font color=red>Fejlkode:</font> Du mangler og udfylde, fornavn!</b><br>"); }else{ if($_POST[efternavn] == "") { echo("<b><font color=red>Fejlkode:</font> Du mangler og udfylde, efternavn!</b><br>"); }else{ if(!preg_match("/^[a-åA-Å]+$/i", $_POST['fornavn'])) { echo("<font color=red>Fejlkode:</font> Fornavn må kun indholde fra A-Å!"); }else{ if($_POST[brugernavn] == "") { echo("<b><font color=red>Fejlkode:</font> Du mangler og udfylde, brugernavn!</b><br>"); }else{ if($_POST[adgangskode] == "") { echo("<b><font color=red>Fejlkode:</font> Du mangler og udfylde, adgangskode!</b><br>"); }else{ if($_POST[email] == "") { echo("<b><font color=red>Fejlkode:</font> Du mangler og udfylde, email!</b><br>"); }else{ if(strlen($_POST[brugernavn]) < "3") { echo("<b><font color=red>Fejlkode:</font> Dit brugernavn er for lille, mindst 3 tegn!</b><br>"); }else{ if(strlen($_POST[brugernavn]) > "18") { echo("<b><font color=red>Fejlkode:</font> Dit brugernavn er for langt, max 18 tegn!</b><br>"); }else{ if(strlen($_POST[adgangskode]) < "5") { print "<b><font color=red>Fejlkode:</font> Din adgangskode er for lille, mindst 5 tegn!</b><br>"; }else{ if(strlen($_POST[adgangskode]) > "20") { echo("<b><font color=red>Fejlkode:</font> Din adgangskode er for langt, max 20 tegn!</b><br>"); }else{ $email = $_POST[email]; if (substr_count($email,'@')==0) { echo("<b><font color=red>Fejlkode:</font> Ugyldig email adresse!</b><br>"); }else{ $mail = mysql_query("SELECT * FROM `brugere` WHERE email LIKE '$_POST[email]'"); if(mysql_num_rows($mail) != "0") { echo("<b><font color=red>Fejlkode:</font> E-mailen er allerede registreret på en anden bruger i communityet. Hvis du mener dette er en fejl, bør du henvende dig til vores en af ejerne.</b><br>"); }else{ $bruger = mysql_query("SELECT * FROM `brugere` WHERE brugernavn LIKE '$_POST[brugernavn]'"); if(mysql_num_rows($bruger) != "0") { echo("<b><font color=red>Fejlkode:</font> $_POST[brugernavn] findes allerede, skriv venligts et andet brugernavn!</b><br>"); }else{ if($_POST[adgangskode] != "$_POST[adgangskode2]") { echo("<b><font color=red>Fejlkode:</font> De to adgangskoder er ikke ens!</b><br>"); }else{ if(substr($_POST[brugernavn],0,1) == " ") { echo("<b><font color=red>Fejlkode:</font> Dit brugernavn må ikke starte med mellemrum!</b><br>"); }else{ $navn = strlen($_POST[brugernavn]); if(substr($_POST[brugernavn],$navn-1,$navn) == " ") { echo("<b><font color=red>Fejlkode:</font> Brugernavnet må ikke slutte med mellemrum!</b><br>"); }else{ if(substr($_POST[brugernavn],$navn-1,$navn) == " ") { echo("<b><font color=red>Fejlkode:</font> Brugernavnet må ikke slutte med mellemrum!</b><br>"); }else{ if($_POST[navn] == "bot") { print "<b><font color=red>Fejlkode:</font> Du kan ikke oprette en bruger med navnet bot! Da vores system-bot i tagwallen hedder det!</b><br>"; }else{ if($_SERVER[REMOTE_ADDR] == "217.116.248.35") { }else{
$dato = date("d-m-y G:i"); $ip = $_SERVER[REMOTE_ADDR]; $brugernavn = htmlspecialchars($_POST[brugernavn]); $email = htmlspecialchars($_POST[email]); $fornavn = htmlspecialchars($_POST[fornavn]); $efternavn = htmlspecialchars($_POST[efternavn]); $landsdel = htmlspecialchars($_POST[landsdel]); $random1 = rand(1, 9); $random2 = rand(1, 9); $random3 = rand(1, 9); $random4 = rand(1, 9); $random5 = rand(1, 9); $bogstaver = "ABCDEFGHIJKLMNOPQRSTUVXYZ"; $random_bogstav1 = rand(1, 26); $random_bogstav2 = rand(1, 26); $random_bogstav3 = rand(1, 26); $random_bogstav4 = rand(1, 26); $random_bogstav5 = rand(1, 26); $random_bogstav6 = rand(1, 26); $random_bogstav7 = rand(1, 26); $random_bogstav8 = rand(1, 26); $random_bogstav9 = rand(1, 26); $random_bogstav10 = rand(1, 26); $random_bogstav11 = rand(1, 26); $random_bogstav12 = rand(1, 26); $random_bogstav13 = rand(1, 26); $random_bogstav14 = rand(1, 26); $random_bogstav15 = rand(1, 26); $random_bogstav16 = rand(1, 26); $random_bogstav17 = rand(1, 26); $random_bogstav18 = rand(1, 26); $random_bogstav19 = rand(1, 26); $random_bogstav20 = rand(1, 26); $aktiveringskode = "$bogstaver[$random_bogstav1]$bogstaver[$random_bogstav2]$bogstaver[$random_bogstav3]$bogstaver[$random_bogstav4]$bogstaver[$random_bogstav5]-$bogstaver[$random_bogstav6]$bogstaver[$random_bogstav7]$bogstaver[$random_bogstav8]$bogstaver[$random_bogstav9]$bogstaver[$random_bogstav10]-$bogstaver[$random_bogstav11]$bogstaver[$random_bogstav12]$random1$bogstaver[$random_bogstav13]$random2-$bogstaver[$random_bogstav14]$random3$bogstaver[$random_bogstav15]$bogstaver[$random_bogstav16]$random4-$bogstaver[$random_bogstav17]$bogstaver[$random_bogstav18]$bogstaver[$random_bogstav19]$random5$bogstaver[$random_bogstav20]"; $sendto = "$email"; $mail = ('Info@info.dk'); $msg = "Velkommen"; $msg .= "Brugernavn: $brugernavn\n"; $msg .= "Adgangskode: $_POST[adgangskode]\n"; $msg .= "Tak fordi du oprettet en bruger! Du kan nu frit benytte vores community. Husk at læse reglerne igennen.\n\n"; $msg .= "Mvh"; $subject = "Oprettelse"; if(mail($sendto, $subject, $msg, "From: $mail\r\n" . "Reply-To: $mail\r\n")) { mysql_query("INSERT INTO `brugere` (brugernavn, adgangskode, aktiveringskode, mobilnummer, fornavn, efternavn, koen, alder, landsdel, profiltekst, profiltekst2, profiltekst3, profiltekst4, profiltekst5, email, ipadresse, oprettet) VALUES ('$brugernavn', '$_POST[adgangskode]', '$aktiveringskode', '', '$fornavn', '$efternavn', '$_POST[koen]', '$_POST[dato] $_POST[maaned] $_POST[aar]', '$landsdel', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', '$email', '$ip', '$dato')") or die(mysql_error()); echo "<script>confirm('Din bruger, $brugernavn er oprettet! Du kan derfor logge ind i community!')</script><meta http-equiv=\"refresh\" content=\"0;url=aktivering.php\">"; } } } } } } } } } } } } } } } } } } } } } } ?> <form name="form1" method="post" action=""> <table style="width:100%;"> <tr> <td align="left"><b>Fornavn:</b></td> <td align="center"><input type="text" maxlength="20" name="fornavn"></td> <td align="right"><b>Skriv dit fornavn.</b></td> </tr> <tr> <td style="height:4px;"></td> </tr> <tr> <td align="left"><b>Efternavn:</b></td> <td align="center"><input type="text" maxlength="30" name="efternavn"></td> <td align="right"><b>Skriv dit efternavn.</b></td> </tr> <tr> <td style="height:4px;"></td> </tr> <tr> <td align="left"><b>Brugernavn:</b></td> <td align="center"><input type="text" maxlength="18" name="brugernavn"></td> <td align="right"><b>Skriv dit ønskede brugernavn.</b></td> </tr> <tr> <td style="height:4px;"></td> </tr> <tr> <td align="left"><b>Adgangskode:</b></td> <td align="center"><input type="password" maxlength="20" name="adgangskode"></td> <td align="right"><b>Skriv din ønskede adgangskode.</b></td> </tr> <tr> <td style="height:4px;"></td> </tr> <tr> <td align="left"><b>Adgangskode igen:</b></td> <td align="center"><input type="password" maxlength="20" name="adgangskode2"></td> <td align="right"><b>Skriv lige din ønskede adgangskode én gang til.</b></td> </tr> <tr> <td style="height:4px;"></td> </tr> <tr> <td align="left"><b>E-mail adresse:</b></td> <td align="center"><input type="text" maxlength="50" name="email"></td> <td align="right"><b>Skriv din email, som vi kan sende en velkommest besked til.</b></td> </tr> <tr> <td style="height:4px;"></td> </tr> <tr> <td align="left"><b>Dit Køn:</b></td> <td align="center"><select name="koen" style="width:146px;"> <option value="Dreng/Mand">Dreng/Mand</option> <option value="Pige/Kvinde">Pige/Kvinde</option> </select> </td> <td align="right"><b>Vælg dit køn, i dropdown menuen.</b></td> </tr> <tr> <td style="height:4px;"></td> </tr> <tr> <td align="left"><b>Landsdel:</b></td> <td align="center"><select name="landsdel" style="width:146px;"> <option value="Nordjylland">Nordjylland</option> <option value="Østjylland">Østjylland</option> <option value="Vestjylland">Vestjylland</option> <option value="Sønderjylland">Sønderjylland</option> <option value="Sjælland">Sjælland</option> <option value="Fyn & Øerne">Fyn & Øerne</option> <option value="Bornholm & Øerne">Bornholm & Øerne</option> </select></td> <td align="right"><b>Vælg på listen, hvor du kommer fra.</b></td> </tr> <tr> <td style="height:4px;"></td> </tr> <tr> <td align="left"><b>Fødselsdato:</b></td> <td align="center"> <select name="dato"> <?php $dato = 1; while($dato <= 31) { echo "<option value=\"$dato\">$dato</option>"; $dato++; } ?> </select>
It is recommended to use either the mysqli or PDO_MySQL extensions. It is not recommended to use the old mysql extension for new development, as it was deprecated in PHP 5.5.0 and was removed in PHP 7. /citat
>if ($_POST[brugernavn] == "") { du burde få en advarsel om der mangler plinger omkring brugernavn if ($_POST['brugernavn'] == "") { dem har du rigtig mange af
med brugernavn, fornavn, efternavn, adgangskode, email
står der det rigtige i din sql ??, med de rigtige parameter ?? prøv at udskrive din sql >"INSERT INTO `brugere` (brugernavn, adgangskode, aktiveringskode, mobilnummer, fornavn, efternavn, koen, alder, landsdel, profiltekst, profiltekst2, profiltekst3, profiltekst4, profiltekst5, email, ligner i mistænkelig grad en repeterede gruppe, hvilke fjernes i 1NF, kig på dit db design.
Har rettet ALT der stod... men det gør statig det samme.. men der står ikke nogle stedet at if($_POST[fornavn] == "") { skal rettes med '' ved fornavn.. det skriver den ikke nogle steder? Og om jeg ændre det eller ikke, det giver ingen ændring..
$subject = "Oprettelse"; echo "skal til at sende mail"; if (mail($sendto, $subject, $msg, "From: $mail\r\n" . "Reply-To: $mail\r\n")) { $sql = "INSERT INTO `brugere` (brugernavn, adgangskode, aktiveringskode, mobilnummer, fornavn, efternavn, koen, alder, landsdel, profiltekst, profiltekst2, profiltekst3, profiltekst4, profiltekst5, email, ipadresse, oprettet) VALUES ('$brugernavn', '$_POST[adgangskode]', '$aktiveringskode', '', '$fornavn', '$efternavn', '$_POST[koen]', '$_POST[dato] $_POST[maaned] $_POST[aar]', '$landsdel', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', '$email', '$ip', '$dato')"; echo $sql; // test står der det i sql jeg forvendter mysql_query($sql) or die(mysql_error()); echo "<script>confirm('Din bruger, $brugernavn er oprettet! Du kan derfor logge ind i community!')</script><meta http-equiv=\"refresh\" content=\"0;url=aktivering.php\">"; }
#12 en typisk mysqli connection ser sådan ud
(tested mange gange)
<?php $mysqli = new mysqli ( "localhost", "root", "", "test" ); if (! $mysqli) { echo 'Der opstod en fejl.'; exit (); }
Vil prøve at ændre det hele til php7 hvis det ikke er umuligt.. det lyder beder.. men findes der ikke et program til at kode i som skriver med rød skrift hvis det er forkert skrevet ind? Ellers vil dette tage en evighed.. samt man vil komme til at overse en hel masse :)
Og det eneste der er galt når jeg bruger php 5.6 er det opret der opdater.. Alt andet virker.. også når jeg laver en bruger i selve databasen, så virker alt når jeg logger på osv..
>Og det eneste der er galt når jeg bruger php 5.6 er det opret der opdater. du mener den går bare tilbage til opret siden.
der er en fejl i denne code, hvad har du rettet den til ??
else { $navn = strlen($_POST['brugernavn']); if (substr($_POST['brugernavn'], $navn - 1, $navn) == " ") { echo("<b><font color=red>Fejlkode:</font> Brugernavnet må ikke slutte med mellemrum!</b><br>"); } else { if (substr($_POST['brugernavn'], $navn - 1, $navn) == " ") { echo("<b><font color=red>Fejlkode:</font> Brugernavnet må ikke slutte med mellemrum!</b><br>"); }
else { if ($_POST['navn'] == "bot") { print "<b><font color=red>Fejlkode:</font> Du kan ikke oprette en bruger med navnet bot! Da vores system-bot i tagwallen hedder det!</b><br>"; }
vær opmærksom på at du ikke får oprettet noget i db, medmindre du får sendt en mail!! får du sendt en mail ??
if(mail($sendto, $subject, $msg, "From: $mail\r\n" . "Reply-To: $mail\r\n")) { mysql_query("INSERT INTO `brugere` (brugernavn, adgangskode, aktiveringskode, mobilnummer, fornavn, efternavn, koen, alder, landsdel, profiltekst, profiltekst2, profiltekst3, profiltekst4, profiltekst5, email, ipadresse, oprettet) VALUES ('$brugernavn', '$_POST[adgangskode]', '$aktiveringskode', '', '$fornavn', '$efternavn', '$_POST[koen]', '$_POST[dato] $_POST[maaned] $_POST[aar]', '$landsdel', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', 'Brugeren har endnu ikke skrevet en profiltekst.', '$email', '$ip', '$dato')") or die(mysql_error()); echo "<script>confirm('Din bruger, $brugernavn er oprettet! Du kan derfor logge ind i community!')</script><meta http-equiv=\"refresh\" content=\"0;url=aktivering.php\">"; }
if( isset($_SESSION['brugernavn']) AND isset($_SESSION['kodeord']) AND isset($_SESSION['status']) ) {
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.