Theodorl Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 (endret) Hei, lurte på en liten ting her... Hvordan kan man lage en lignende database som en har i Access med MySql? Det kalles hyperkobling i Access, men finner ikke noen måte å gjøre dette på i MySql... Grunnen til dette er at jeg vil lage et form hvor jeg kan endre de forskjellige inputene til et annet form. (hørtes veldig tungvint ut når jeg skrev det ned ) Slik som jeg legger opp det siste formet nå så bruker jeg vanlig select i HTML og en SET row i databasen hvor dataene blir satt inn. Men hvis en ny verdi skal legges til må jeg gå inn i alle formene å endre på select verdiene i tillegg til SET rowen i databasen. Endret 31. oktober 2007 av Theodorl Lenke til kommentar
Wackamole Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 (endret) "<a href='link'>".$row['input_type']."</a>" Endret 31. oktober 2007 av Famen Lenke til kommentar
Runar Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 "".$sql['row']."" Hvis du ikke har peiling på hva du svarer på, så hold deg unna tråden. Svaret ditt er ikke bare komplett feil, men fullstendig uten mening og nyttig informasjon. Hold deg til det du kan. Lenke til kommentar
Wackamole Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 (endret) Han ville ha en url som stod til et eller annet han skulle endre på en form (fortsto ikke spørssm. så godt) dette er måten.. <?php include_once('db_connect.php'); $sql = mysql_query ("SELECT * FROM form") or die ("Error in query: $off_sql".mysql_error()); while($row = mysql_fetch_array($sql)){ echo "<a href='link'>".$row['input_type']."endre</a>"; } ?> EDIT: og istedenfor og komme med slike kommentarer, så kan du vell hjelpe han slik at alt blir rett hvis du mener jeg tar feil, (det kan godt hende at jeg tar feil, men det er slik jeg gjør det) EDIT II: gjort litt endringer på koden--- Endret 31. oktober 2007 av Famen Lenke til kommentar
Mats Danielsen Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 Enig med Famen, unødvendig av deg Runar og kommentere på denne måten. Du har vært her lenge og burde vist bedre, og det Famen har sagt er helt korrekt, dersom du har noe som du mener er mer riktig kan du jo bare slenge det frem? Lenke til kommentar
Runar Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 (endret) Jeg har vært her lenge nok til å ha forstått at et så enkelt og meningsløst innlegg som det Famen kom med er uønsket. Han verken forklarte hva koden gjorde, fungerte eller hvordan man brukte den. Koden han postet (hvis man kan kalle det en kode) i første post fungerer ikke "out-of-the-box", man må koble til databasen og behandle resultatene. I tillegg er det ikke det trådstarter ønsker. Det han kaller en "hyperlink" er noe han har brukt i Access, som jeg forøvrig kan svært lite om. Oppdatering: Du kan jo lagre skjemaet (formen) i én PHP fil, som du redigerer hvis du vil legge til et felt eller lignende. Det samme kan du jo gjøre med den kodebiten som kommuniserer med databasen (SET). Endret 31. oktober 2007 av Runar Lenke til kommentar
Theodorl Skrevet 31. oktober 2007 Forfatter Del Skrevet 31. oktober 2007 (endret) Takk for svar, men ikke helt det jeg sitter fast med. Jeg har ingen problemer med å liste verdiene fra databasen, men det er selve databasen jeg sliter med. Skal prøve å vise hvordan det hele er bygget opp og beskrive problemet: Database "personer" som inneholder: -id -navn -tlfnr -email -avdeling -nivaa view.php som kan redigere: -id -navn -tlfnr -email -avdeling* -nivaa* *Problemet er at brukeren skal kunne legge til nye avdelinger og nye nivåer, samt redigere disse. Men hvordan kan jeg ordne dette? Min egen løsning er å ha en egen side for dette som redigerer egne tabeller som heter "avdelinger" og "nivaaer" som videre linkes opp mot tabellen "personer". Håper dette ble en bedre beskrivelse en tidligere.. Takk for svar! Endret 31. oktober 2007 av Theodorl Lenke til kommentar
Wackamole Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 (endret) Dette vil gjøre susen (utestet) Klikk for å se/fjerne innholdet nedenfor <title>Endre - Nivå - Avdeling</title> <?php $db = mysql_connect("localhost","brukernavn","passord"); mysql_select_db("database",$db) or die(mysql_error()); ?> <?php if (isset($_POST['submit'])) { $avdeling = $_POST['avdeling']; $nivaa = $_POST['nivaa']; $sql = "INSERT INTO personer SET avdeling='$avdeling', nivaa='$nivaa'"; $result = mysql_query($sql); if ($result == TRUE) echo 'Avdeling og nivå ble lagt til'; else echo 'Feil med innlegging av avdeling og nivå'; } else { ?> <form action="" method="post"> <fieldset><legend>Legg til avedling og nivå</legend> <dl> <dt>Nivå: <dd><input type="text" name="nivaa" /></dd> </dt> <dt>Avdeling: <dd><input type="text" name="avdeling" /></dd> </dt> <dt><br /><input type="submit" name="submit" /></dt> </dl> </fieldset> </form> <?php } ?> Dette scriptet legger til en ny avdeling og/eller nivå i databasen. Endret 31. oktober 2007 av Famen Lenke til kommentar
ZoRaC Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 Sikkerhet er en fin ting - user input skal ALDRI rett inn i et query! Bruk mysql_real_escape_string()! Lenke til kommentar
PHPdude Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 Sikkerhet er en fin ting - ext/mysql bør dumpes med en gang til fordel for en som støtter prepared statements. ext/PDO Lenke til kommentar
Lokaltog Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 Seriøst, jeg blir oppgitt av å lese den tråden her. Famen - ikke svar på spørsmål du (tydeligvis) ikke kan en dritt om. (...) Hvordan kan man lage en lignende database som en har i Access med MySql? Det kalles hyperkobling i Access, men finner ikke noen måte å gjøre dette på i MySql... (...) ... og svaret ditt er "<a href='link'>".$row['input_type']."</a>"!? Hva i svarte er det for et svar..? Støtter Runar 100% i uttalelsene hans, dette svaret er kort, meningsløst og har ingenting med trådstarters spørsmål å gjøre. I tillegg er scriptet du postet usikkert, og ingen i verden bør bruke det. Til trådstarter: Jeg vet ikke om det finnes noen enklere måter å legge til nye avdelinger og sånt på enn den du beskriver. Hvis brukeren skal legge inn data i to egne tabeller, så må du vel ha et eget skjema for å legge inn disse dataene? Kan du forklare hvordan det funker i Access, så blir det lettere å finne en alternativ løsning for MySQL. Lenke til kommentar
Wackamole Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 Jeg skrev det jeg trodde spørsmålet var, og jeg trodde trådstarter kunne litt mer om dette, derfor gadd jeg ikke skrive mer om det, men jeg skjønner det, (Og er helt enig). Jeg skulle ha utdypt meg (mye) mer og forklart.. men som sagt jeg forsto ikke spørsmålet helt. til scriptet jeg la ut: Det er sikkert veldig usikkert, men det funker. (Det er opp til trådstarter om han vil bruke det eller ikke,.) Lenke til kommentar
Theodorl Skrevet 31. oktober 2007 Forfatter Del Skrevet 31. oktober 2007 (endret) Vet ikke hvor viktig sikkerheten er siden dette bare skal ligge på en intern server, men ang access. Måten hyperkobling funker er slik: En har f.eks tre tabeller, "bøker" , "kattegori" og "Produsenter" Tabellen "bøker" inneholder: -ISBN nr -Tittel -Kattegori* -Produsent** -Årstall Tabellen "kattegorier inneholder: -Krim -Triller -Action -Komedie Tabellen "Produsenter" inneholder: -Gyldendal -Dam -osv... Det en kan gjøre i Access er å legge inn de to siste tabellen som hyperkobling inn i tabellen "bøker" under "kattegori" og "produsent". På denne måten hindrer en brukeren i å legge inn en "ugyldig" verdi samtidig som en kan la brukeren legge til og endre denne tabellen gjennom et skjema og verdiene blir oppdatert i "bøker". Det opprettes slags forhold mellom de tre tabellene. so, er dette mulig i MySql? Håper dette var litt mer beskrivende. -Theo Endret 31. oktober 2007 av Theodorl Lenke til kommentar
ZoRaC Skrevet 31. oktober 2007 Del Skrevet 31. oktober 2007 Dette kalles "constraints" på SQL-språket. Det er altså kobling mellom fremmednøkler og primærnøkler. Her står det litt om slike "bindinger" i MySQL: http://www.databasejournal.com/features/my...cle.php/2248101 Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå