Gå til innhold

Kombinere to tabeller


Anbefalte innlegg

Skrevet

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! :)

Videoannonse
Annonse
Skrevet

Du bør endre på tabellen for bilder slik at IDen fra fangstrapp settes inn i bilde radene. Hvis ikke er det ikke noen forbindelse mellom tabellene og du vet ikke (som du sier) hvilke bilder som hører til hvilke fangstrapp.

Skrevet
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?

Skrevet
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

Skrevet

Ahh,hjertelig!

holder tråen åpen litt til,støter sikkert på flere problemer etterhvert :)

Supert at dere stiller opp for oss grønninger!

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