Gå til innhold

Kombinere to tabeller


Anbefalte innlegg

Heisan,

sliter litt her! Etter å ha løst dette problemet etter mye feiling,trenger jeg litt mere hjelp.

 

Målet er å få alt fra et skjema skrevet ut i en fiskefangsttabell for vising på nett.

Jeg har en tabell med bilder og en tabell for resten av data'n i mysql. Nå er problemet hvordan jeg skal knytte disse opp mot hverandre,slik at rett fangst viser rett bilde.

 

Jeg har prøvd med

$sql = "SELECT * FROM fangstrapp JOIN fangstrapp_bilde USING (id)";

problemet er når noen ikke laster opp et bilde så kommer id'ene i utakt.

 

Er sikkert en kjempeenkel løsning på dette,men jeg er egentlig helt blank på php/mysql!

 

Tenkte på en måte å sette inn tomme verdier i bildetabellen eller noe sånt,slik at selv om man ikke laster opp et bilde,kommer det en ny id og kanskje et "bilde ikke tilgjengelig" kan vises.

 

slik ser sende-scriptet mitt ut:

<?php
$bruker=$_POST['bruker'];
$art=$_POST['art'];
$dato=$_POST['dato'];
$vekt=$_POST['vekt'];
$lengde=$_POST['lengde'];
$sted=$_POST['sted'];
$redskap=$_POST['redskap'];
$type_red=$_POST['type_red'];
$tid=$_POST['tid'];
$vaer=$_POST['vaer'];
$vind=$_POST['vind'];
$kommentar=$_POST['kommentar'];

extract($_FILES['bilde']);
$data = mysql_escape_string(fread(fopen($tmp_name, "rb"), filesize($tmp_name)));
$info = getimagesize($tmp_name);
$width =$info[0];
$height=$info[1];

$db = mysql_connect("****", "****", "****") or die(mysql_error());
       mysql_select_db("****") or die(mysql_error());

mysql_query("INSERT INTO fangstrapp (bruker,art,dato,vekt,lengde,sted,redskap,type_red,tid,vaer,vind,kommentar) VALUES ('$bruker', '$art', '$dato', '$vekt', '$lengde', '$sted', '$redskap', '$type_red', '$tid', '$vaer', '$vind', '$kommentar')");

$result=MYSQL_QUERY("INSERT INTO fangstrapp_bilde (bin_data,filename,filesize,filetype,height,width)".
"VALUES ('$data','$name','$size','$type','$height','$width')");
echo "$height - $width";
Print "Fangstrapporten er lagt til.";
?>

 

Men nå går hjernen i spinn,tar kvelden og håper at morgendagen bringer gode nyheter! :)

Lenke til kommentar
Videoannonse
Annonse
Du bør endre på tabellen for bilder slik at IDen fra fangstrapp settes inn i bilde radene.

:blush: Dette klarer jeg ikke helt å finne ut av hvordan skal gjøres. Gjøres dette inne i selve mysql admin'n? Eller i prosseseringen av skjemaet?

Lenke til kommentar
Du bør endre på tabellen for bilder slik at IDen fra fangstrapp settes inn i bilde radene.

:blush: Dette klarer jeg ikke helt å finne ut av hvordan skal gjøres. Gjøres dette inne i selve mysql admin'n? Eller i prosseseringen av skjemaet?

6040029[/snapback]

 

Du må endre bildetabellen din slik at den inneholder en fangstrapp-id. Dette kan du gjøre i phpAdmin eller i kommandogrensesnitt for mysql.

 

Når du da setter inn fangstrapport inn i databasen henter du ut id'en til denne ved hjelp av mysql_insert_id(). Denne setter du inn i bildetabellen, på fangstrappID (eller hva du kaller den)

 

 

Da vil du nå ha to tabeller som ser slik ut:

fangstrappID

bruker,

art,

dato,

vekt,

lengde,

sted,

redskap,

type_red,

tid,

vaer,

vind,

kommentar

 

og bildetabellen din

bildeID

bin_data,

filename,

filesize,

filetype,

height,

width,

fangstrappID <-- refererer til fangstrapp-tabellen din

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å
×
×
  • Opprett ny...