Gå til innhold

hva er galt med denne enkle spørringen?


Anbefalte innlegg

Jeg er nokså ny med php og mysql men prøver meg på å lage en enkel shoutbox.

 

$con = mysql_connect("localhost","root","");
if (!$con)
 {
 die('Could not connect: ' . mysql_error());
 }

//Velg Database
mysql_select_db('tekno', $con);


$add = "INSERT INTO shout (navn, alder, innlegg)
VALUES('$_POST[navn]'), '$_POST[alder]', '$_POST[innlegg]')";

mysql_query ($add,$con);
mysql_close ($con);

print $_POST['navn'];

 

print $_POST ['navn'] er bare for å se om $_POST variablene ble definert, og det er de.

 

Problemet er at det ikke blir lagt til noe data til databasen

 

Hilsen snorre :)

Endret av Snobjorn
Lenke til kommentar
Videoannonse
Annonse

$add = "INSERT INTO shout (navn, alder, innlegg)
VALUES('$_POST[navn]', '$_POST[alder]', '$_POST[innlegg]')";

mysql_query($add) or die(mysql_error());
mysql_close ($con);

 

Se om du får noe feilmelding der.

 

uansett, så er $_POST variablene dine åpne for XXS,

anbefaller quote_smart. ( google)

Endret av LaCrouX
Lenke til kommentar

$add = "INSERT INTO shout (navn, alder, innlegg)
VALUES('$_POST[navn]'), '$_POST[alder]', '$_POST[innlegg]')";

mysql_query($add) or die(mysql_error());
mysql_close ($con);

Når jeg ser på VALUES, så har du 1x( og 2x). mulig det er her problemet ligger ;)

 

Prøv dette på add:

$add = "INSERT INTO shout (navn, alder, innlegg)

VALUES('$_POST[navn]', '$_POST[alder]', '$_POST[innlegg]')";

 

Referere til denne: http://www.w3schools.com/SQL/sql_insert.asp

Endret av TeisL
Lenke til kommentar

Prøv denne?

 

$navn = $_POST['navn'];
$alder = $_POST['alder'];
$innlegg = $_POST['innlegg'];

$add = "INSERT INTO shout (navn, alder, innlegg)
VALUES('$navn', '$alder', '$innlegg');

mysql_query($add) or die(mysql_error());
mysql_close ($con);

Lenke til kommentar

Hmm, det er kanskje en riktigere måte å gjøre det på ja...

 

 

Men det hjalp ikke. :/ kan det være noe feil i formen?

 

<form action="takk.php" method="_POST">
<table>
<tr><th>Navn:</th><td><input name="navn" type="text" /></td></tr>
<tr><th>Alder:</th><td><input name="alder" type="text" /></td></tr>
<tr><th>Din mening:</th><td><textarea name="innlegg" cols="20" rows="5"></textarea></td></tr>
<tr><th><input type="submit" value="Send"></th></tr>

</table>
</form>

 

 

Når jeg trykker på send, så blir det sendt til mysqldatabasen men det følger ikke med noe data...

Endret av Snobjorn
Lenke til kommentar

Måten du setter inn dataene i spørringen din på gjør at databasen din ligger på vidt gap for hackerangrep. Jeg vil anbefale på det sterkeste at du setter deg inn i hvordan du beskytter databasen din mot "SQL injection" (google det).

Lenke til kommentar

Vet at dette er en veldig sårbar løsning, men dette var til en eksamensoppgave i "bilde" på vg3 hvor dette ikke inngår i læreplanen en gang. Jeg klarte i allefall å imponere sensoren som var utdannet videoklipper ;)

 

 

 

Jeg gleder meg til å lære mer php og sql. takk for hjelpen jeg har fått :)

Endret av Snobjorn
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...