hjahre Skrevet 29. mai 2007 Del Skrevet 29. mai 2007 Hei, jeg lurer på en ting. Jeg lagde et script, for å få ut all informasjonen i en table ut i en array. Kan noen gi tilbakemelding på om dette er noe jeg bør ta vare på? bruker det i en side jeg har under utvikling, håper på å bare bruke det scriptet som mysql funksjon function ConnectDB($db = '<navn på database>') { $UserName = 'brukernavn'; $password = 'passord'; $connection = mysql_connect(localhost, $UserName, $password); if(!$connection) { return false; die(mysql_error() . "<br />"); } else { $select_db = mysql_select_db($db, $connection); if(!select_db) { return false; die(mysql_error() . "<br />"); } else { return true; } } }; function RunQuery($query) { $output[-1][2] = false; $continue = true; if(ConnectDB()) { if(strpos(strtolower($query), 'nsert') > 0 || strpos(strtolower($query), 'pdate') > 0 || strpos(strtolower($query), 'elete') > 0) { if(mysql_query($query)) { $output[-1][2] = true; } else { $output[-1][2] = false; $output[-1][3] .= mysql_error()."<br />"; } $continue = false; } elseif($continue == true && strpos(strtolower($query), 'elect') > 0) { $result = mysql_query($query); if(isset($result)) { $num_rows = mysql_num_rows($result); $num_fields = mysql_num_fields($result); $output[-1][0] = $num_rows; $output[-1][1] = $num_fields; $i = 0; while($i < $num_rows) { $q = 0; while($q < $num_fields) { $output[$i][$q] = mysql_result($result, $i, $q); $q++; } $i++; } $output[-1][2] = true; } else { $output[-1][3] .= mysql_error()."<br />"; $output[-1][2] = false; } } else { $output[-1][3] .= mysql_error()."<br />"; } return $output; } mysql_close(); }; Lenke til kommentar
Ståle Skrevet 29. mai 2007 Del Skrevet 29. mai 2007 Tror du bor se litt pa mysql_fetch_array for eksempel. Var litt ikke-optimert kode det der. Lenke til kommentar
hjahre Skrevet 29. mai 2007 Forfatter Del Skrevet 29. mai 2007 jo, var kanskje det men den mysql_fetch_array, har den bare 1 dimensjonale arrays? eller har den 2 dimensjonale som jeg vil ha? Jeg vil helst ha 2 dimensjonale på grunn av den friheten det gir å kunne velge rad og så hvilket felt man vil ha ut Lenke til kommentar
endrebjo Skrevet 29. mai 2007 Del Skrevet 29. mai 2007 (endret) Du burde velge rad og felt i SQL-spørringen, og la while og foreach ta seg av loopingen. Endret 29. mai 2007 av endrebjorsvik Lenke til kommentar
hjahre Skrevet 29. mai 2007 Forfatter Del Skrevet 29. mai 2007 Ja, det kan hende det går;) Det scriptet over der slang jeg sammen på 10min, jeg er nybegynner i PHP/MySQL og har ikke utforska alt sammen Har holdt på med Delphi, så har litt peil på programmering, men nå holdt jeg meg ikke til saken Men jeg får fikse litt på scriptet, eller prøve å gjøre de forbedringene dere nevnte Lenke til kommentar
grimjoey Skrevet 8. juni 2007 Del Skrevet 8. juni 2007 (endret) jeg bruker: // du må koble til database først function mysql_get($sql) { $res = mysql_query($sql); $arr = array(); while($row = mysql_fetch_assoc($result)) { array_push($arr, $row); } return $arr } // husk å lukke database tilkoblingen denne lager et numerisk array med hver rad som et streng indeksert array. streng indicene er kolonne navn. create table test (id int(11) not null auto_increment primary key, tittel text, innhold blob); insert into test values(null,"dette er en tittel", "dette er innhold"); insert into test values(null, "en annen tittel", "noe annet"); $dbLink = mysql_connect(...); mysql_select_db(...); $resultat = mysql_get('select * from test;'); mysql_close($dbLink); print_r($resultat); // skriver ut arrayet i tekstformat. blir noe liknende: Array ( [0] -> Array ( ['id'] -> 0 ['tittel'] -> "Dette er en tittel" ['innhold'] -> "Dette er innhold" ) [1] -> Array ( ['id'] -> 1 ['tittel'] -> "En annen tittel" ['innhold'] -> "noe annet" ) ) edit:typo Endret 8. juni 2007 av grimjoey 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å