Avatar billede aquix Nybegynder
05. juli 2005 - 17:30 Der er 14 kommentarer og
1 løsning

Jeg kan ikk få smidt informationer i databasen. HELP.

Hejsa...

Jeg har prøvet at lave et lille script, hvor man kan tilmelde sin clan, og så skal den nedenunder form, skrive de tilmeldte claner. Men det virker ikke som om den får smidt data ind i mysql databasen. Det kan jeg i hvert fald konkludere ud fra at der intet bliver vist på siden + at der ikk er noget i phpmyadmin ;(

Koden ser ud som følger:

<html>
<head>
<title>AIMSHOP.liga - signup</title>
</head>

<?

$db = mysql_connect("localhost", "x", "x");

mysql_select_db("x", $db);

if ($skriv){
   
    $klannavn = str_replace("\n","<br>", $klannavn);

mysql_query("INSERT INTO tilmeld (klannavn, hjemmeside, mirc, email, players) VALUES ('$klannavn', '$hjemmeside', '$mirc', '$email', '$players')");

}

?>

<center>

<form method=post action=<? echo $PHP_self; ?>>

<input type=hidden NAME=skriv value=1>

Klannavn:    <input TYPE=text NAME=klannavn>                <br>
Hjemmeside:    <input TYPE=text NAME=hjemmeside>            <br>
mIRC:        <input TYPE=text NAME=mirc>                <br>
email:        <input TYPE=text NAME=email>                <br>
                                    <br>
Spillere:    <TEXTAREA NAME=players COLS=30 ROWS=5></TEXTAREA>    <br>

        <input TYPE=submit VALUE="Tilmeld">

</form>

<br><br>

<table>

<?

$foresp = mysql_query("SELECT klannavn, hjemmeside, mirc, email, players FROM tilmeld ORDER BY nr DESC");

while($data = mysql_fetch_row($foresp)){

    echo "<tr><td valign=TOP>";
    echo '<a href=\"http://$hjemmeside">$klannavn</a>';
    echo "$mirc";
    echo "$email";
    echo "</td> </tr>";
}

?>

</table>
</center>
</body>
</html>


scriptet kan ses her: www.aimshop.dk/tilmeld/tilmeld.php

Hvad kan der være galt? :D

Jeg takker på forhånd.
Avatar billede leif Seniormester
05. juli 2005 - 17:38 #1
$_POST['skriv']
$_POST['klannavn']
osv.

Der kodes efter "gammel" PHP, der skal normalt kodes efter "ny" PHP standard.
Avatar billede aquix Nybegynder
05. juli 2005 - 17:42 #2
Hvad skal det erstatte i koden?
Avatar billede leif Seniormester
05. juli 2005 - 17:46 #3
$skriv
$klannavn
osv.

Det er ikke kun de 2 men alle variabler som kommer fra formen der skal ændres !
Avatar billede aquix Nybegynder
05. juli 2005 - 18:45 #4
ingen forbedring desværre...
Avatar billede pallotto Nybegynder
05. juli 2005 - 18:51 #5
Du skal også huske i dit while at skrive $data['email'] istedet for bare $email.
Avatar billede pallotto Nybegynder
05. juli 2005 - 18:55 #6
Har du set om den overhoved kommer ind i den if sætning?

Skift den ud med:
if (isset($_POST['trykketned'])) {

Og i din form så lav den om til:
<input trpe="submit" name="trykketned" value="Tilmeld">
Avatar billede pallotto Nybegynder
05. juli 2005 - 18:56 #7
Undskyld jeg har skrevet trpe i input'en der skal stå type
Avatar billede aquix Nybegynder
05. juli 2005 - 19:01 #8
Jeg må indrømme at jeg er ved at være lidt lost eftersom jeg har haft en mate til at kigge på det også :D Omg :P

Lii nu ser koden såen her ud :

<html>
<head>
<title>AIMSHOP.liga - signup</title>
</head>

<?

$db = mysql_connect("localhost", "x", "x");

mysql_select_db("x", $db);

if (isset($_POST['trykketned'])) {
   
    $klannavn = str_replace("\n","<br>", $klannavn);

mysql_query("INSERT INTO tilmeld (klannavn, hjemmeside, mirc, email, players) VALUES ('$klannavn', '$hjemmeside', '$mirc', '$email', '$players')");

}

?>

<center>

<form method=post action=<? echo $PHP_self; ?>>

<input type=hidden NAME=trykketned value=1>

Klannavn:    <input TYPE=text NAME=klannavn>                <br>
Hjemmeside:    <input TYPE=text NAME=hjemmeside>            <br>
mIRC:        <input TYPE=text NAME=mirc>                <br>
email:        <input TYPE=text NAME=email>                <br>
                                    <br>
Spillere:    <TEXTAREA NAME=players COLS=30 ROWS=5></TEXTAREA>    <br>

        <input TYPE=submit name="trykketned" VALUE="Tilmeld">

</form>

<br><br>

<table>

<?

$foresp = mysql_query('SELECT $_data["klannavn"], $_data["hjemmeside"], $_data["mirc"], $_data["email"], $_data["players"] FROM tilmeld ORDER BY nr DESC');

while($data = mysql_fetch_row($foresp)){

    echo '<tr><td valign=TOP>';
    echo '<a href=\"http://$_POST["hjemmeside"]">$_POST["klannavn"]</a>';
    echo '$_POST["mirc"]';
    echo '$_POST["email"]';
    echo '</td> </tr>';
}

?>

</table>
</center>
</body>
</html>

ino der er fejl, er bar lost li nu :D
Avatar billede aquix Nybegynder
05. juli 2005 - 19:08 #9
Hmm, så ikk meningen jeg sku ha skrevet som et svar :S
Avatar billede aquix Nybegynder
05. juli 2005 - 19:14 #10
Jeg må indrømme at jeg er ved at være lidt lost eftersom jeg har haft en mate til at kigge på det også :D Omg :P

Lii nu ser koden såen her ud :

<html>
<head>
<title>AIMSHOP.liga - signup</title>
</head>

<?

$db = mysql_connect("localhost", "x", "x");

mysql_select_db("x", $db);

if (isset($_POST['trykketned'])) {
   
    $klannavn = str_replace("\n","<br>", $klannavn);

mysql_query("INSERT INTO tilmeld (klannavn, hjemmeside, mirc, email, players) VALUES ('$klannavn', '$hjemmeside', '$mirc', '$email', '$players')");

}

?>

<center>

<form method=post action=<? echo $PHP_self; ?>>

<input type=hidden NAME=trykketned value=1>

Klannavn:    <input TYPE=text NAME=klannavn>                <br>
Hjemmeside:    <input TYPE=text NAME=hjemmeside>            <br>
mIRC:        <input TYPE=text NAME=mirc>                <br>
email:        <input TYPE=text NAME=email>                <br>
                                    <br>
Spillere:    <TEXTAREA NAME=players COLS=30 ROWS=5></TEXTAREA>    <br>

        <input TYPE=submit name="trykketned" VALUE="Tilmeld">

</form>

<br><br>

<table>

<?

$foresp = mysql_query('SELECT $_data["klannavn"], $_data["hjemmeside"], $_data["mirc"], $_data["email"], $_data["players"] FROM tilmeld ORDER BY nr DESC');

while($data = mysql_fetch_row($foresp)){

    echo '<tr><td valign=TOP>';
    echo '<a href=\"http://$_POST["hjemmeside"]">$_POST["klannavn"]</a>';
    echo '$_POST["mirc"]';
    echo '$_POST["email"]';
    echo '</td> </tr>';
}

?>

</table>
</center>
</body>
</html>

ino der er fejl, er bar lost li nu :D
Avatar billede kdjweb Nybegynder
05. juli 2005 - 20:42 #11
ved ikke om jeg tar fejl.. men jeg mener at men ikke bruger " i en query f.eks. ('SELECT $_data[players] osv')

ved ikke om jeg tar fejl
Avatar billede pallotto Nybegynder
05. juli 2005 - 23:32 #12
Sry. Hvis jeg lyder lidt sur. Men du har endnu ikk rettet det som du sagde til dig :).

Oppe i den kode hvor du smider noget ind i din mySQL database der står der endnu $klannavn der skal du skrive $_POST['klannavn'] og rette de andre også self.

En ny fejl du har lavet er at skrive echo '$_POST["email"]'; der skal ikk stå ' når du vil kalde en variabel inde i den. Der skal du bruge ". Men en anden god ting at vide er at når du bare skal printe en variabel så behøver man ikk skrive " og dermed vil den bare blive til: echo $_POST['email']; HUSK at det er kun hvis det er det eneste der skal stå i den echo linie.
Lige for at rette den linie hvor du vil lave et link:
echo '<a href=\"http://$_POST["hjemmeside"]">$_POST["klannavn"]</a>';
Den retter vi til:
echo "<a href=\"http://".$_POST['hjemmeside']."\">".$_POST['klannavn']."</a>";

Ikk fordi jeg vil sige at du har mange fejl. Men du skriver de ting vi / jeg siger til dig de forkerte steder.
Når jeg kommer hjem retter jeg lige de store fejl jeg kan se i din kode. Så må du lige sige om de er mere i det.

Du har lidt problemer i din mysql_guery(); nede ved dit while hvis du kan se det.
Avatar billede pallotto Nybegynder
06. juli 2005 - 11:55 #13
Hej igen.

Her er så den rettede del. HUSK AT KIGGE I KODEN så du lærer noget af det her, istedet for bare at smide koden ind og sige weeee det virker. LÆR NOGET AF DET!

<html>
<head>
<title>AIMSHOP.liga - signup</title>
</head>

<?

$db = mysql_connect("localhost", "x", "x");

mysql_select_db("x", $db);

if (isset($_POST['trykketned'])) {
$klannavn = str_replace("\n","<br>", $_POST['klannavn']);
mysql_query("INSERT INTO tilmeld (klannavn, hjemmeside, mirc, email, players) VALUES ('".$klannavn."', '".$_POST['hjemmeside']."', '".$_POST['mirc']."', '".$_POST['email']."', '".$_POST['players']."')");
}
?>

<center>

<form method=post action="?<? echo $_SERVER["QUERY_STRING"]; ?>">

Klannavn:    <input TYPE="text" NAME="klannavn">                <br>
Hjemmeside:    <input TYPE="text" NAME="hjemmeside">            <br>
mIRC:        <input TYPE="text" NAME="mirc">                <br>
email:        <input TYPE="text" NAME="email">                <br>
                                    <br>
Spillere:    <TEXTAREA NAME=players COLS=30 ROWS=5></TEXTAREA>    <br>

        <input TYPE="submit" name="trykketned" VALUE="Tilmeld">

</form>

<br><br>

<table>

<?

$foresp = mysql_query('SELECT * FROM tilmeld ORDER BY nr DESC');
while($data = mysql_fetch_row($foresp)){

    echo "<tr><td valign=TOP>";
    echo "<a href=\"http://".$data['hjemmeside']."\">".$data['klannavn']."</a>";
    echo $data['mirc'];
    echo $data['email'];
    echo "</td> </tr>";
}
?>

</table>
</center>
</body>
</html>

Jeg vil ikk sige at det virker. Men jeg har rettet de store fejl du havde i koden. Du må selv rette den til.
Avatar billede aquix Nybegynder
06. juli 2005 - 13:07 #14
Jeg takker for din tid... det virker endnu ikke desværre. Den smider informationerne ind i databasen som det skal, men de blir ikk hentet ud igen, og vist på siden... Jeg kigger lidt på det :)
Avatar billede pallotto Nybegynder
06. juli 2005 - 18:45 #15
Okay.. Håber du får det til at virke. Jeg har gjort mit :)
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