jogil Skrevet 26. oktober 2006 Del Skrevet 26. oktober 2006 (endret) Hvordan skal jeg legge inn en søkefunksjon som fungerer på siden min? Litt info: Hjemmesiden er satt opp på en Abyss http-server Kjører FTP-server på samme PC ( Har ikke noe med saken å gjøre ) PHP er installert ( Versjon 5.1 ) MySQL ( Version 4.1 ) Oppgaven er å søke fram til filer som ligger på hjemmesiden. Disse filene ligger på siden via virtuelle linker på serveren fra lokale hardisker på samme PC. Det er snakk om fire forskjellige disker ( tror at det ikke har noe å si siden jeg har virtuelle linker til en og samme mappe ). Håper noen kan komme med svar, for det kan bli litt slitsomt for folk å søke manuelt blant ca 50 000 filer. Takker for alle svar, rett meg gjerne hvis jeg har skrevet noe feil! Edit: Jeg endte opp med "Search Engine X". Jeg har lagt inn phpMyAdmin, jeg lager ny database, limer inn: CREATE TABLE softr ( A varchar(255) default NULL, B varchar(255) default NULL ) ENGINE=InnoDB; Så skal jeg legge til en fil som heter "tablerecords.csv" (fikk ett problem med maksimums størrelse der, men klarte å endre den i php.ini) Når jeg trykker [utfør], så får jeg opp denne feilmeldingen: Feil SQL-spørring: "1"; MySQL sa: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"1"' at line 1 Noen som har vært borti noe liknende, eller som har gode kunskaper med MySQL, og som kan gi meg en liten forklaring eller guide meg gjennom? EDIT: Redigert topic Endret 26. oktober 2006 av jogil Lenke til kommentar
oxodesign Skrevet 26. oktober 2006 Del Skrevet 26. oktober 2006 Hei, prøv den: CREATE TABLE `filer` ( `file_id` INT( 10 ) NOT NULL AUTO_INCREMENT PRIMARY KEY , `file_name` VARCHAR( 200 ) NOT NULL , `file_path` VARCHAR( 200 ) NOT NULL , `file_size` INT( 15 ) NOT NULL ) ENGINE = MYISAM ; File_id = Gir et unikt ident nr til filen File_name = Navnet til filen (200 bokstaver maks) File_path = Navnet hvor fila ligger i systemet (eks C:\files\my foler\) File_size = Størrelse få filen Den lager en grei database for deg. Hvis du er interesser at jeg skal fikse hele systemet selvflg. mot betaling send meg en PM. mvh. OXODesign Lenke til kommentar
Ueland Skrevet 27. oktober 2006 Del Skrevet 27. oktober 2006 Skal du kun kunne søke etter path til filer er det jo like raskt å bare ta "exec("Find %søkeord");" vil jeg nå tro, ikke vits å gjøre det verre enn nødvendig. (Merk: Linux only feature) Lenke til kommentar
xqus Skrevet 29. oktober 2006 Del Skrevet 29. oktober 2006 I det siste php|architect (som jeg fikk) stod det en fin artikkel om hvordan du kan lage en grei søkemotor til siden din. http://phparch.com/issue.php?mid=88 Lenke til kommentar
jogil Skrevet 31. oktober 2006 Forfatter Del Skrevet 31. oktober 2006 (endret) Skal du kun kunne søke etter path til filer er det jo like raskt å bare ta "exec("Find %søkeord");" vil jeg nå tro, ikke vits å gjøre det verre enn nødvendig. (Merk: Linux only feature) 7162623[/snapback] Prøvde å bruke <?php exec("Find %søkeord"); ?> Gjort noe galt der, eller må jeg ha noe mere, som feks. en rute til å taste inn osv.? Edit: Kjører ikke linux! Endret 31. oktober 2006 av jogil Lenke til kommentar
Peter Skrevet 31. oktober 2006 Del Skrevet 31. oktober 2006 (endret) Du må antakelig søke rekursivt gjennom alle mappene dine. Ettersom du bruke php5 kan du bruke http://no2.php.net/scandir PHP <?php function find($dir, $to_find) { foreach(scandir($dir) as $dir_entry) { if(strcmp($dir_entry, $to_find) == 0) return $dir.'/'.$dir_entry; elseif(is_dir($dir_entry)) { return find($dir.'/'.$dir_entry); } } } $location = find('.', 'minfil.txt'); eller noe sånt. Endret 31. oktober 2006 av Nazgul 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å