Hov. Du er ikke logget ind.
DU SKAL VÆRE LOGGET IND, FOR AT INTERAGERE PÅ DENNE SIDE

En php programmør til stede?

Side 1 ud af 3 (24 indlæg)
Fra Odense
Tilmeldt 28. Feb 09
Indlæg ialt: 109
Skrevet kl. 19:14
Hvor mange stjerner giver du? :

Hej Aminoer

Jeg skriver fordi jeg lige har et spørgsmål det har som sådan ikke meget med iværksætteri at gøre, men har lagt mærke til at der sidder mange programmøre herinde.

Jeg er selv programmør, men er kommet til et problem jeg bare ikke kan løse. Jeg sidder for tiden og arbejde på politik-nu.dk Jeg henter rss feeds fra sf og radikale i første omgang som en test, senere bliver det alle partier. Mit problem er at når jeg henter Rss feedsne viser siden ikke åøæ korrekt hvordan ændre jeg dette? Min mysql database er allerede sat til dansk hvad gør jeg forkert?

På forhånd tak

Hilsen

Philip Brechmann

Fra Odense
Tilmeldt 28. Feb 09
Indlæg ialt: 109
Skrevet kl. 19:15
Hvor mange stjerner giver du? :

Skal måske lige tilføje at det er når de bliver smidt in i databasen at tegnene fucker op det er ikke når jeg henter dem fra databasen.

Fra Århus
Tilmeldt 18. Feb 06
Indlæg ialt: 4322
Skrevet kl. 19:31
Hvor mange stjerner giver du? :

Du kører nok med et andet tegnsæt end det feed du henter, f.eks. kører du ISO og det feed du henter kører UTF-8, eller omvendt.

Safeticket - Dit enkle og fleksible billetsystem.

Tilmeldt 1. Apr 09
Indlæg ialt: 63
Skrevet kl. 19:45
Hvor mange stjerner giver du? :

Har du forsøgt at gå over til unicode (hvis dette ikke allerede er forsøgt? )

Fra Odense
Tilmeldt 28. Feb 09
Indlæg ialt: 109
Skrevet kl. 19:47
Hvor mange stjerner giver du? :

Okay tak ja det kan selvfølgelig godt lade sig gøre må jeg lige check op på.

Fra Odense
Tilmeldt 4. Jun 06
Indlæg ialt: 953
Fra  Veronté Skrevet kl. 19:53
Hvor mange stjerner giver du? :

Det kan skyldes meget.

Måske er dit webhotel sat til kun at parse sider efter utf-8. Ellers har du måske gemt filen i utf-8 format?

Prøv at smæk denne kode ind først i din php fil:

header("Content-Type: text/html;charset=ISO-8859-1");

Altså f.eks.:

<?php

header("Content-Type: text/html;charset=ISO-8859-1");

......

?>

Det er vigtigt, at den bliver sat som den 2. linje i din fil (efter <?)

Mvh., Elias Sørensen

Ved siden af mit arbejde som udvikler, sælger jeg også sokker på nettet :o)

Fra Odense
Tilmeldt 28. Feb 09
Indlæg ialt: 109
Skrevet kl. 20:00
Hvor mange stjerner giver du? :

Tror jeg må snakke med mit webhotel så, det stykke gode du skrev hjalp ikk kan lige prøve at se om jeg af en eller anden grund skulle have gemt den i det forkerte format. Hvis det viser sig at det er mit web hotel den er galt med kan jeg så fikse? uden at skifte webhotel fx ved noget str_replace eller lignende?

Fra Odense
Tilmeldt 4. Jun 06
Indlæg ialt: 953
Fra  Veronté Skrevet kl. 20:40
Hvor mange stjerner giver du? :

Hvis du har tænkt dig at replace kan det jo ikke være noget med outputtet, men derimod hvor du får det fra.

Kan du linke til den side der giver fejl?

Mvh., Elias Sørensen

Ved siden af mit arbejde som udvikler, sælger jeg også sokker på nettet :o)

Fra Odense
Tilmeldt 28. Feb 09
Indlæg ialt: 109
Skrevet kl. 20:44
Hvor mange stjerner giver du? :

altså som sådan er det jo forsiden det er der filerne ikke bliver vist korrekt, den side der for tiden henter og opdatere rss'en er der ikke andet end serverside langue på, men det der rss'en bliver gemt ned. Og det er lige fra det sekund jeg henter rss'en at åøæ ikke hvirker. :S

Fra Odense
Tilmeldt 28. Feb 09
Indlæg ialt: 109
Skrevet kl. 18:00
Hvor mange stjerner giver du? :

Jeg har efterhånden fundet frem til lige der hvor mit problem opstår.  Her er koden der virker forkert.

 

<?php header("Content-Type: text/html;charset=ISO-8859-1"); ?>

//gem de x nyeste indlæg i en database
        public function gemRss(){
            foreach($this->items as $item){
                $this->miniTitle = $item->title;
                $this->miniDescription = $item->description;
                $this->miniLink = $item->link;
                $timestamp = strtotime($item->pubDate);
                $this->miniTimestamp = $timestamp;
                //husk addslahes foran hver eneste variabel så ' ikke ødelægger databasen
                $query = "INSERT INTO ". $this->tableName . " VALUES('', ";
                $query .= "'" . addslashes($this->miniTitle) . "',";
                $query .= "'" . addslashes($this->miniDescription) . "',";
                $query .= "'" . addslashes($this->miniLink) . "',";
                $query .= "'" . addslashes($this->miniTimestamp) . "',";
                $query .= "'" . addslashes($this->link) . "',";
                $query .= "'', '" . $this->kategori . "',)";
                $doneQuery = str_replace(",)", ")", $query);
                //check om feeden allerede findes i database
                $checkQuery = "SELECT * FROM " . $this->tableName . " WHERE title = '" . $this->miniTitle . "'";
                $checkResult = Database::lavResult($checkQuery);
                if(Database::numRows($checkResult) == 0){
                    if(!Database::lavResult($doneQuery)){
                        return false;   
                    }
                }
            }
        }

//fra partierne
    $rss = new Rss;
    $rss->kategori = "b";
    $rss->hentRss("http://www.sf.dk/default.aspx?func=rss.feed&id=29067");
    $rss->gemRss();

Hvis jeg inden jeg gemmer dem i databasen prøver at echo fx $this->miniTitle fucker åøæ allerede op så det er charsettet på siden der henter rssne der fucker om og ikke databasen.

Side 1 ud af 3 (24 indlæg)