22. august 2002 - 13:56Der er
9 kommentarer og 1 løsning
Hente data fra mysql og updatere dem ???
Dette er et script der henter mine oplysninger og skriver dem så man kan opdatere en "post", det virker også helt fint med almindelige felter, men lige så snart den skal hente det der skal stå i textarea's så vil den ikke...dvs. de kommer ikke frem på siden. Nogen der ved hvad der kan være galt ?
$query = "select * from annoncer where (id = '$nr' AND password = '$password') order by id"; $result = mysql_query($query);
Det skal lige siges at dette er et udsnit af et script, men det er her fejlen ligger et sted, jeg tror det er hvor denne linie starter: if (!strrchr(mysql_field_name($result,$i), "x")) efter ELSE.
Du må jo kunne se på outputtet om det er betingelsen der er gal eller hvad. Kan du ikke poste det?
cbolvig -> printf() printer en formateret streng ud til std_out -> %s betyder at argumentet skal fortolkes som streng. prøv følgende og læs om sprintf() i php manualen ( forskellen mellen printf og sprintf er returværdien) printf("test1= %s test2=%x","streng",9)
Halu: Det skal lige siges at jeg er rimelig newbie i PHP, og det er en af mine kammeraters script som jeg har tilpasset, og nu vil den ikke skrive textarea boxene så man kan rette i det der står i dem... Jeg ved ikke helt hvad der er du mener ?
->syswatch Jeg mener, hvad kommer der ud af scriptet. bliver linien i det hele taget printet ud til std_out ( hvad står der i sourcen efter php scriptet er kørt?) Du nævner selv at du tror at feljen ligger i lilien if(!strchr(mysql_field_name($result,$i),"x")) -- oversat: hvis ikke x findes i feltnavnet så -> hvis denne betingelse altid er false, vil du ikke få skrevet linien med textarea ud - hvilket kunne være problemet. hvis du får skrevet liline ud -> hvordan ser den så ud efter phpscriptet er kørt?
Halu: Jeg har 1 textarea som skal hente oplysninger fra en kolonne der hedder text. Og den indeholder da x. Jeg kan ikke rigtig forstå det, for det burde jo egentlig være ok som det er ikke ?
strchr("text","x") returneren en streng "xt" -> der hvor du gerne vil have printet noget ud har du altså -> if(!"xt"){
} hvilket i bedste fald er noget vrøvl ! betyder NOT NOT FALSE == TRUE; altså skal retur værdien af strchr() funktionen være FALSE hvis du skal have printet noget ud -> det bliver funktionen kun i det tilfælde hvor mysql_field_name() IKKE indeholder x. Hvis du kender navnet på feltet er det meget pænere hvis du checker for det eksplicit -> eksemplevis med if(mysql_field_name($result,$i) == "text"){
} Desuden kan jeg se du har et problem med at få udført den sidste betingelse i og med du tidligere har ->
if ((mysql_field_type($result,$i) == 'string') && (!strrchr(mysql_field_name($result,$i), "x"))){ // det der bliver skrivet ud
} du får der for faktisk KUN skrivet dit textarea ud NÅR feltet fra databasen IKKE indeholder en type der matches som STRING og felt navnet IKKE indeholder x ( altså felter med integers, floats, eller blobs (eksemplevis billedfiler ))
Det får du da bare :-) skulle der være en anden gang
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.