Gå til innhold

Trenger litt hjelp med et script | legge informasjon i database og vise denne i nettleser


Anbefalte innlegg

Skrevet

Jeg prøver å få til et script som gjør at en bruker (admin) kan legge inn informasjon i en database via nett, og vise denne på en nettside. Det må også kunne vises et bilde, og informasjonen må kunne fjernes fra databasen via nett etter ønske. Noen som kan hjelpe meg litt i gang? Det er påtenkt å være et script som legger ut informasjon om adoptering/omplassering av dyr.

Videoannonse
Annonse
Skrevet

Har du vurdert benytte deg av ett ferdig system som f.eks wordpress til denne type publisering? Alternativt kan jeg hjelpe deg i gang med å sende deg til php.net, men ville anbefale å teste wordpress først siden det tar 5min å installere :-)

Skrevet

Det er sant at det tar 5 minutter å installere, men man lærer ikke en døyt php og mysql.

Finner ikke noen guider i farten, men skal si ifra om/når jeg ser noen..

Skrevet

Takk for innspill og svar :) Det hadde vært veldig fint om jeg faktisk kunne lært noe av det, for jeg kan ikke så mye fra før av, men alt ettersom burde det vel ikke være så vanskelig?

Skrevet

Beklager, jeg trodde du bare ville få noe opp fort å virke, ikke faktisk lære deg PHP :-)

 

Lenge siden jeg lærte meg PHP så har ikke noe god oversikt over hvilke tutorials som er best men jeg vet at w3schools ofte har gode tutorials for å komme igang med språk. Ikke veldig avanserte, men ett greit utgangspunkt.

 

Ville generelt tatt en leterunde etter gode tutorial på nett eller vanlige bøker på temaet.

 

Lykke til og kos deg med PHP!

Skrevet

Takk, takk :) Sindrem.com har vel en del greit stoff også. Jeg har faktisk kjøpt Webprogrammering i php for noen år siden, men jeg syns den var litt tung å lese, så jeg la den i grunnen bare fra meg, og etter det har jeg ikke sett så mye på den, til tross for at den har fått mye skryt.

Skrevet

Ja, det er tungt å lese, begynte selv med "klipp og lim" metoden og lærte masse irriterende feil.

Hadde jeg kunnet gjort det om igjen hadde jeg startet med en tung bok.

Skrevet

Her er det jo egentlig to ting som du trenger å lære. (Grovt sett)

Dette med interaksjon med database, og dette med å laste opp filer til server.

 

Ta en ting av gangen først, siden du skal lære dette:

Nødvendige operasjoner for databasehåndtering

  • Tilkobling til databaseserver

  • Valg av database

  • Sende forespørsel (SQL-setning) til databaseserver

  • Motta og behandle svar (resultatet av SQL-setningen) fra databaseserver

Tilkobling til databaseserver

Funksjonskall

  • mysql_pconnect($host,$user,$password)

Parametre

  • $host : navn på server
  • $user : brukernavn for eieren av databasen
  • $password : passord for eieren av databasen

Valg av database

Funksjonskall

  • mysql_selectdb($database)

Parametre

  • $database : navn på databasen

Sende forespørsel (SQL-setning) til databaseserver

Funksjonskall

  • mysql_query($sqlSetning)

Parametre

  • $sqlSetning: SQL-setningen som skal sendes til databasetjeneren

Funksjonsverdi

  • Resultatet av SQL-setningen

Motta og behandle svar (resultatet av SQL-setningen) fra databaseserver

Funksjonskall

  • mysql_num_rows($sqlResultat)

Parametre

  • $sqlResultat: resultatet av SQL-setningen

Funksjonsverdi

  • antall rader i resultattabellen

Funksjonskall

  • mysql_num_fields($sqlResultat)

Parametre

  • $sqlResultat: resultatet av SQL-setningen

Funksjonsverdi

  • antall kolonner i resultattabellen

Funksjonskall

  • mysql_fetch_array($sqlResultat)

Parametre

  • $sqlResultat: resultatet av SQL-setningen

Funksjonsverdi

  • innholdet av neste rad i resultattabellen

Eksempler

 

 

<?php	 /* Eksempel 1a */
/*
/*	Programmet mottar postnr og poststed fra et HTML-skjema
/*	Programmet sjekker om feltene postnr og poststed er fylt ut
/*	Programmet registrerer data om poststedet i POSTSTED-tabellen 
*/
$host="localhost";
$user="student";
$password="******";
$database="student";	 /* verdier satt for host, user, password og database for tilkobling til databaseserver */

$postnr=$_POST ["postnr"];
$poststed=$_POST ["poststed"];	 /* variable gitt verdier fra feltene i HTML-skjemaet */

if (!$postnr || !$poststed)	 /* nødvendige felter er ikke fylt ut */
{
	print ("postnr og poststed må fylles ut <br>");
}
else
{
	mysql_pconnect($host,$user,$password);	 /* tilkobling til database-serveren utført */

	mysql_select_db($database);	 /* valg av database foretatt */

	$sqlSetning="INSERT INTO poststed VALUES('$postnr','$poststed')";
	$sqlResultat=mysql_query($sqlSetning);	 /* SQL-setning sendt til database-serveren */

	if (!($sqlResultat))	 /* SQL-setningen ble ikke utført med vellykket resultat */
		{
			print ("registrering ikke vellykket <br>");
		}
		   else
		{
			print ("nytt poststed er nå registrert <br>");
		}
}
?>

Opplasting av fil

// en if setning som sjekker filbane og navn på fil, om den er satt/trigget
if( empty($_FILES['filbane']['name']) ) {
?>
<form action="upload.php" method="post" enctype="multipart/form-data">

Velg et bilde ved å trykke på knappen til høyre... <br>

<input type="file" name="filbane" size="30"><p>

<textarea name="beskrivelse"></textarea>

...skriv inn en passende beskrivelse på bildet, og trykk 

deretter her for å laste opp til tjeneren

<input type="submit" value="Last opp fil" name="last_opp">

</form>  
<?
}

else {
//$temp_fil er et midlertidig navn bestemt i php.ini 

$temp_fil = $_FILES['filbane']['tmp_name']; 

//Blir for eksempel bilder/navn.jpg

$filnavn = "bilder/". $_FILES['filbane']['name']; 

//må derfor kopiere fra denne over til et kjent sted/navn

copy($temp_fil, $filnavn) or die ("Kunne ikke kopiere");



$filtype = $_FILES['filbane']['type']; //MIME-typen til filen

$storrelse = $_FILES['filbane']['size']; //størrelsen


 $host="localhost";
 $user="student";
 $password="******";
 $database="student";  

	$sqlSetning="INSERT INTO tabellen (filtype, storrelse, filnavn )VALUES ('$filtype','$storrelse','$filnavn ')";
	$sqlResultat=mysql_query($sqlSetning);	 /* SQL-setning sendt til database-serveren */

		  if (!($sqlResultat))	 /* SQL-setningen ble ikke utført med vellykket resultat */
		{
			print ("registrering ikke vellykket <br />");
		}
		   else
		{
			print ("Registrering vellykket<br />");
		}

Opphenting av denne informasjonen vil da foregå på samme måte:



  $host="localhost";
  $user="student";
  $password="******";
  $database="student";  


mysql_pconnect($host,$user,$password);	 /* tilkobling til database-serveren utført */
mysql_select_db($database);	 /* valg av database foretatt */
$sqlSetning="SELECT * FROM tabellen";
$sqlResultat=mysql_query($sqlSetning);	 /* SQL-setning sendt til database-serveren */

if (mysql_num_rows($sqlResultat)>=0) /* hvis det er informasjon/lagrede bilder i db */
		{
while($rad = mysql_fetch_array($sqlResultat)){
			print ("<img src='".$rad['filbane']."' >");
}
		}

Tror det blir noe slikt.

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