jic Skrevet 13. april 2005 Del Skrevet 13. april 2005 (endret) Får denne feil melding. Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /hsphere/local/home/****/*****/sok1.php on line 11 Søket resulterte i 0 resultater Her er linje 9-13 $i = 0; while ($row = mysql_fetch_array($query)) { print $i++; } echo "Søket resulterte i $i resultater \n"; Noen som kan hjelpe meg? Endret 13. april 2005 av jic Lenke til kommentar
LoS Skrevet 13. april 2005 Del Skrevet 13. april 2005 Hva er $query, og hva sier mysql_error() ? Lenke til kommentar
Gilbert Skrevet 13. april 2005 Del Skrevet 13. april 2005 Hvis du er ute etter å telle antall rader, så er vel ikke det den beste måten? http://forum.hardware.no/index.php?showtop...dpost&p=3967852 Mulig det er noe galt i emnefeltet ditt også, kan bare ikke sette fingeren på hva det er Lenke til kommentar
Knast Skrevet 13. april 2005 Del Skrevet 13. april 2005 Har egentlig ikke så mye peiling på php enda at det gjør noe, men: 1. "print $i++;" hva sier "++" mulig dette rådet er helt på jordet... 2. Tittelen din sier altfor lite om hva posten inneholder. Velg edit på den øverste posten og endre tittelen. Lenke til kommentar
jic Skrevet 13. april 2005 Forfatter Del Skrevet 13. april 2005 Jeg prøver å lage søke script, men får det ikke til. Har prøvd flere forskjellige script men får det samme feil melding. <? echo "Søk etter nyhet:"; echo "<form action=\"$PHP_SELF?action=search\" method=\"post\"\>"; ?> <table border=0> <td valign=top>Søkeord:</td><td valign=top><input id="keyword" name="keyword" size="32" type="text"><br> <td valign=top><input type=submit value="Søk" name="ok"></td> </table> </form> <?php $action = $_GET['action']; switch($action){ case search: $search = addslashes($keyword); // Dette er denne sikkerhets funksjonen Druber //snakket om. $connection = mysql_connect ( $hostname, $user, $pass) or die("Klarte ikke koble til databasen"); $database = mysql_select_db($database ,$connection); $result = mysql_query("SELECT * FROM wap WHERE midi LIKE '%$search%'", $connection); // som dere ser leter den her i maintext. Det er fordi //maintext er en row i tabellen til phpnews. Denne må dere redigere til det du //trenger. if($search == "%") { // Lar søkeren få en "error" hvis han søker etter % echo "Venligst skriv et annet søkeord!"; } elseif($search == "") { // Lar søkeren få en "error" hvis han søker tomt echo "Venligst skriv et annet søkeord!"; } Else { echo "<br><br><u>Resultatene av søket ditt (<i>$search</i>):<br><br></u>"; While ( $row = mysql_fetch_array( $result ) ) { echo "<</a><br>"; // Dette er koden som viser fram resultatet. Her er //det også en direkte link. Denne vil ikke fungere hvis du har en annen måte på å //vise nyheter osv... break; } } default: echo "<b>ERROR 404!</b> Siden ikke funnnet"; break; } ?> Har prøvd denne også men får samme feil mld. Jeg kommer ikke inn på ftp så får ikke skrevet hele scriptet akkurat nå. Lenke til kommentar
Gilbert Skrevet 13. april 2005 Del Skrevet 13. april 2005 (endret) Har egentlig ikke så mye peiling på php enda at det gjør noe, men:1. "print $i++;" hva sier "++" mulig dette rådet er helt på jordet... 2. Tittelen din sier altfor lite om hva posten inneholder. Velg edit på den øverste posten og endre tittelen. 1) ++ øker variabel med 1. $variabel = 1; $variabel++; // $variabel = 2; jic: du bør hvertfall legge til følgende: if([b]trim([/b]$search[b])[/b] == "%") { // Lar søkeren få en "error" hvis han søker etter % echo "Venligst skriv et annet søkeord!"; } elseif([b]empty([/b]$search[b])[/b] == "") { // Lar søkeren få en "error" hvis han søker tomt echo "Venligst skriv et annet søkeord!"; } ...eller kanskje slå de sammen: if([b]trim($search) == "%" || empty($search)[/b]) { // Lar søkeren få en "error" hvis han søker etter % eller søker tomt echo "Venligst skriv et annet søkeord!"; } edit: la til -taggen :-) Endret 13. april 2005 av fjartan Lenke til kommentar
jic Skrevet 13. april 2005 Forfatter Del Skrevet 13. april 2005 Takk skal prøve det senere når ftpen fungerer skikkelig. Lenke til kommentar
jic Skrevet 14. april 2005 Forfatter Del Skrevet 14. april 2005 Hei! Jge får hele tiden samme feil melding. Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in. Har prøvd flere forskjellige script, men er samme feil melding uansett. vet noen hva som kan være grunnen. Lenke til kommentar
Torbjørn Skrevet 15. april 2005 Del Skrevet 15. april 2005 lathorv, venn deg ellers gjerne til å lese i manualen; http://no2.php.net/manual/en/language.oper...s.increment.php Lenke til kommentar
datapia Skrevet 15. april 2005 Del Skrevet 15. april 2005 Hei Dette er koden du har skrevet: $i = 0; while ($row = mysql_fetch_array($query)) { print $i++; } echo "Søket resulterte i $i resultater \n"; Du bør heller gjøre slik: $query = "select * from blabla'"; $resultat = mysql_query($query, $db); if(!$resultat) { echo'Kunne ikke foreta spørring'; } while($row = mysql_fetch_array($resultat)) { //Henter ud det du vil ha } Håper dette hjelper.. Lenke til kommentar
BlueEAGLE Skrevet 20. april 2005 Del Skrevet 20. april 2005 Ser ut som at koblingen til databasetjeneren ikke virker som den skal. Prøv dette for å sjekke <?php $dbTjener="localhost"; //Sett inn noe annet om du trenger det $dbBrukernavn="ditt brukernavn" //Har du brukt rett brukernavn? $dbPassord="ditt passord" //Sett inn databasetjenerpassordet her $dbDatabase="din database" //Sett inn navnet på databasen din her. $dbTabell="en tabell i databasen" //Sett inn noe som passer //koble til mysql_connect($dbTjener, $dbBrukernavn, $dbPassord) or die(mysql_error()); //velge database mysql_select_db($dbDatabase) or die(mysql_error()); //Lag litt kode som tester tilkoblingen. $query="SELECT * FROM $dbTabell"; $result = mysql_query($query) or die("Spørringen <p>$query</p>forårsaket feilmeldingen:<br>".mysql_error()); echo 'Spørringen returnerte '.mysql_num_rows($result).' rader.'; Her er det bare å endre de variablene øverst inntil tilkoblingen til databasetjeneren virker. Legge også merke til hvordan all ekstern kommunikasjon til databasetjeneren er feilsjekket med 'or die(mysql_error())'. Dette er fordi mange av mysql_ funksjonene ikke gir feilmelding videre i scriptet selv om de får en feilmelding fra databastjeneren. Håper dette hjelper. Lenke til kommentar
jic Skrevet 20. april 2005 Forfatter Del Skrevet 20. april 2005 Jeg får ikke det til. Gir opp. Takk for hjelpen alle som har tatt tid til å hjelpe meg. Lenke til kommentar
claus erik Skrevet 20. april 2005 Del Skrevet 20. april 2005 Jeg lukter en feil i denne linja... $database = mysql_select_db($database ,$connection); Legg til litt på slutten så den blir $database = mysql_select_db($database ,$connection) or die("Klarte ikke å velge database"); for å sjekke det eller mysql_error() Lenke til kommentar
jic Skrevet 21. april 2005 Forfatter Del Skrevet 21. april 2005 Jeg lukter en feil i denne linja... $database = mysql_select_db($database ,$connection); Legg til litt på slutten så den blir $database = mysql_select_db($database ,$connection) or die("Klarte ikke å velge database"); for å sjekke det eller mysql_error() Hei! Jeg får opp. ERROR 404! Siden ikke funnnet Tror jeg aldri får det til. Lenke til kommentar
claus erik Skrevet 21. april 2005 Del Skrevet 21. april 2005 404 feil er bare rett og slett fordi den ikke finner filen Så det har ikke så mye med PHP å gjøre. Kontroller filnavn og at serveren virker og prøv igjen? Lenke til kommentar
jic Skrevet 21. april 2005 Forfatter Del Skrevet 21. april 2005 404 feil er bare rett og slett fordi den ikke finner filen Så det har ikke så mye med PHP å gjøre. Kontroller filnavn og at serveren virker og prøv igjen? Nå får jeg denne feilmelding igjen Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in mobile.mrjic.net/test1.php on line 40 Lenke til kommentar
Ildflue Skrevet 21. april 2005 Del Skrevet 21. april 2005 Ok, et par spørsmål: - Er det din server hvor databasen ligger? - Er det din server hvor siden ligger? Hvis begge svar er nei; Det kan hende at du ikke kan bruke localhost. Jeg kan ikke det hos min host. Dette kan være en grunn. Jeg husker å ha hatt akkurat det samme problemet selv, men jeg kommer ikke på hva det var. Tror det var noe med connection til databasen. Lenke til kommentar
kakkle Skrevet 21. april 2005 Del Skrevet 21. april 2005 (endret) 1. Du må nok sikkert bruke $_POST[] får å få tak i keyword... Sett inn etter case search: $keyword = $_POST["keyword"]; Regner med Globale verdier er avslått (iom at du bruker $_GET). Bør ihvertfall være det... 2. Kjør alltid en sjekk på spørringen din mot mysql. Bytt ut "$result = mysql_query........" med dette: $sql = "SELECT * FROM wap WHERE midi LIKE '%$search%'"; $result = mysql_query($sql) or die("FEIL I SPØRRING: $sql <br>".mysql_Error()); Da vil du nok få fram en feilmelding som forklarer hva som er feil.. Evt også se at spørringen ikke er slik du vil den skal være... EDIT: Så fremt det er koden i innlegg 5 som gjelder, da Endret 21. april 2005 av kakkle 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å