Gå til innhold

lære mysql og php


Anbefalte innlegg

jeg har tenkt å bruke deler av ferien til å sette meg inn i mysql i kombinasjon med php. jeg har gjort litt allerede.

- satt opp tabellen for databasen, som ser slik ut

- laget html skjemaet for gjesteboken

<form name="gjestebok" method="post" action="POST">
<p>navn 
  <input type="text" name="name">
</p>
<p>hjemmeside: 
  <input type="text" name="hjemmeside">
</p>
<p>boplass: 
  <input type="text" name="boplass">
</p>
<p>melding: 
  <textarea name="melding"></textarea>
</p>
<p>kjønn: 
  <label> 
  <input type="radio" NAME="kjonn" VALUE="kvinne">
  kvinne</label>
  <label> 
  <input type="radio" NAME="kjonn" VALUE="mann">
  mann</label>
</p>
</form>

 

så lurer jeg på hvordan jeg skal gå videre for at jeg skal få infoen som skrives i skjemaet til å lagres i databasen for så å kunne vise alt hilsnene.

har lyst å lære dette så om noen har en god side/tutorial som tar for seg dette hadde det vært topp. eller om noen har en liten forklaring på lur :)

 

håper noen kan hjelpe :)

Endret av Smidt
Lenke til kommentar
Videoannonse
Annonse

Ta en kikk på DENNE

 

HEr viser de hvordan du skal hente inn variabler med $_POST[""] og samt hvordan koble til databsen og sette det inn i den.

 

Lykke til :thumbs:

 

EDIT: Så at du hadde satt action="POST" action tagen bestemmer hvilken fil /adressen den skal gå til etter at man trykker på send. På denne siden validere man skjema samt setter inn i databsen. Så en mer korrekt innhold ville være post.php feks.

Endret av Svendsen
Lenke til kommentar
EDIT: Så at du hadde satt action="POST" action tagen bestemmer hvilken fil /adressen den skal gå til etter at man trykker på send. På denne siden validere man skjema samt setter inn i databsen. Så en mer korrekt innhold ville være post.php feks.

men skal ikke det som skrives inn i skjemaet rett til databasen da? eller sendes det til en annen fil på veien? :dontgetit:

Lenke til kommentar
EDIT: Så at du hadde satt action="POST" action tagen bestemmer hvilken fil /adressen den skal gå til etter at man trykker på send. På denne siden validere man skjema samt setter inn i databsen. Så en mer korrekt innhold ville være post.php feks.

men skal ikke det som skrives inn i skjemaet rett til databasen da? eller sendes det til en annen fil på veien? :dontgetit:

Det skal til databsen. Men det må innom et sted for at man skulle kunne koble til databasen samt kjøre sql kommandoer som legger det inn.

 

Ble det noe klarere? Jeg tror at det vil bli det om du går igjenom tutorialen :)

 

MAn kan jo ha alt i en fil også.

Endret av Svendsen
Lenke til kommentar

greit så det nå.

men

 

  
$q="INSERT into guestbook (id,name,email,sitename,siteurl,date,ip,comments)
VALUES ('','$name','$email','$sitename','$siteurl',now(),'$REMOTE_ADDR','$comments')"; 

 

linjen med $q= er det de forskjellige linjene i databasen (altså hvilke forskjellige linjer som er med der)?

 

VALUES er vel da verdiene fra skjemaet?

 

henger rekkefølgen inad i disse sammen??

Endret av Smidt
Lenke til kommentar

jeg fikk til å lage databasen, men jeg hvordan får jeg nå opp alt som blir skrevet i den? jeg legger også merke til at det ikke blir lagret noe tid/dato for når innlegget ble lagt inn selv om jeg har now() som tid.. noen som vet hvorfor?

har det kanskje noe med dette å gjøre?

$cfg['PmaAbsoluteUri'] variabelen MÅ være innstilt i din konfigurasjonsfil!

Endret av Smidt
Lenke til kommentar

Det som kommer etter tabellen din i databasen er hvilke felt du vil legge inn i.

 

Det som kommer etter VALUES er verdiene fra f.eks. skejma ditt.

 

Og ja de må vel være likt som når du ramser de opp ( altså før VALUES )

 

Hvordan du lister ut lærer du også u tuten men kan ta et eksempel:

 

//kobling til databasen


//legger en sql settning i variabel. * betyr at du henter alt ut og det sorters etter feltet id
$query="SELECT * FROM tabell ORDER BY id";
//kjører spørrinegn
$result= mysql_query($query, $connection) or die
("Could not execute query : $query." . mysql_error());

//lager en while loop så lenge det er noe igjen i DB, etter våres kriterier

while ($row=mysql_fetch_array($result)) {
$id=$row["id"]; 
$head=$row["head"];
$date=$row["dato"];
               echo "$id $head $date<br>";
}

 

husk at det ikke er sikkert det jeg henter ut stemmer med dine felt

Endret av Svendsen
Lenke til kommentar

har nå to filer:

index.php

<form name="gjestebok" method="post" action="form.php">
<p>navn 
  <input type="text" name="navn">
</p>
<p>hjemmeside: 
  <input type="text" name="hjemmeside">
</p>
<p>boplass: 
  <input type="text" name="boplass">
</p>
<p>melding: 
  <textarea name="melding"></textarea>
</p>
 <p>kjønn: 
   <label> 
   <input type="radio" NAME="kjonn" VALUE="kvinne">
   kvinne</label>
   <label> 
   <input type="radio" NAME="kjonn" VALUE="mann">
   mann</label>
 </p>
 <p>
   <input type="submit" name="submit" value="Send">
   <input type="reset" name="reset" value="Fjern">
 </p>
</form>

 

form.php

<?php 

// SQL database Variables 

$hostname="mysql.hosted.servetheworld.net";
$user="xxx";
$pass="xxx";
$dbase="xxx"; 
$connection = mysql_connect("$hostname" , "$user" , "$pass");
$db = mysql_select_db($dbase , $connection); 

// This is form.php 

$q="INSERT into gjestebok (navn,hjemmeside,boplass,dato,melding,kjonn,id)
VALUES ('$name','$hjemmeside','$boplass','now()','$melding',kjonn,'')"; 

$result= mysql_query($q, $connection) or die 
("Could not execute query : $q." . mysql_error()); 

if ($result)
{
echo "Takk, $name.Ditt innlegg er lagret.";
} 

?>

 

er det noe der som er feil, eller som gjør at jeg ikke får med tid?

 

som dato får jeg "0000-00-00 00:00:00"

Endret av Smidt
Lenke til kommentar

nei, det virker ikke med endringene heller. jeg får opp en feilmelding når jeg går inn i databasen though, vet ikke om den kan ha noe å si?

$cfg['PmaAbsoluteUri'] variabelen MÅ være innstilt i din konfigurasjonsfil!

hva betyr det?
Lenke til kommentar
nei, det virker ikke med endringene heller. jeg får opp en feilmelding når jeg går inn i databasen though, vet ikke om den kan ha noe å si?
$cfg['PmaAbsoluteUri'] variabelen MÅ være innstilt i din konfigurasjonsfil!

hva betyr det?

Tror alle som hostes hos STW har det. Jeg får ihvertfall den feilen og, men ting funker fett her.

Lenke til kommentar
Tror alle som hostes hos STW har det. Jeg får ihvertfall den feilen og, men ting funker fett her.

har sendt mail til stw nå, håper på raskt svar.

men om jeg vil legge til et nytt feil i tabellen, hvor ip'en logges. hva bør det feltet da inneholde av verdier (type lengde/sett osv)

Lenke til kommentar

får opp en ny feilmelding og nå,

Could not execute query : INSERT into gjestebok (navn,hjemmeside,boplass,dato,melding,kjonn,id) VALUES ('sae','sers ser','s','now()','fsefsdfsdf',dame,'').Unknown column 'dame' in 'field list'

hvorfor funker ikke det å være dame?

Lenke til kommentar

jeg er så utrolig trøtt, og sitter med et artig mysql-problem selv, men sånn lite nattlig tips er time() til unix og date("",time()) til vanlig dato. vet ikke hva du bruker (du har sikkert skrevet det) men er det

 

2004-04-03 23:54:00 så kan du bruke date("Y-m-d H:i:s",time()); - og mysql må stå på "date"

 

1081029240 = time(); - her bruker du int i mysql.

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...