Gå til innhold

kakkle

Medlemmer
  • Innlegg

    731
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av kakkle

  1. Skjønner at du vil ha en max oppløsning på 600x600 ? eller er det bare bredden som maks skal være 600 ? Slik at hvis et bilde er (bxh) 500 x 1200, så blir det ikke endret ?

     

    Uansett, for å få automatisk høyde, må du regne deg fram til hva den nye høyden blir ut ifra den nye bredden:

    Ny høyde = Gammel høyde * (Ny bredde / Gammel bredde)

     

    Dersom du har ImageMagick installert, så kan du egnetlig bare bruke denne, så endre høyden automatisk:

    exec("convert -resize 300x300 $img_source $img_dest");
    

    Men denne vil da også endre høyden ned til 300, dersom det er den som er størst, slik at et bilde som er 1200 * 1600, vil bli 225 x 300 (hmmm.. hvis jeg regnet riktig nå )

  2. Hei

     

    Likte det nye designet bra :thumbup:

    Grattis med ny design.

     

    Har bladd igjennom alle sidene i denne tråden, og prøvd å se om noen har sagt noe om bugg på menyen oppe på forumsidene. Så ingen, da...

    Psoter derfor et screenshot som viser problemet.

    Får det i Firefox og Konquerror. Opera vises ok...

     

    Gjelder kun på forumsidene...

     

    Skjermbilde:

    post-107-1116887377_thumb.jpg

  3. Skjønner det slik at dette er en tabell med kunder...

     

    - Du kan lagre filen i excel som *.csv fil. Da blir det lagret med ; mellom hvert felt. Navnet på feltet blir i den første raden

    - Lag så et script som leser denne filen rad for rad (se file()) og lager en tabell med feltnavn utfra første rad.

    - For å få tak i hvert felt i hver rad, deler du opp hver rad i flere elementer som er skilt med skilletegnet ";" (Se explode)

    - Så legger du hvert felt inn i tabellen i det feltet det skal vha INSERT.

     

    Eksempel

    Excel ark: (Bruker | for skille kolonner) Si at den heter kunder.xls

    kundenummer|kundenavn|adresse|kontaktperson

    231234|hardware.no|hardwaregata|hard ware.no

    1345|firmafake|fakegata 32|arnulf fake

     

    Dette lagres som csv fil (f.eks kunder.csv). Den blir sånn ca slik:

    kundenummer;kundenavn;adresse;kontaktperson

    231234;hardware.no;hardwaregata;hard ware.no

    1345;firmafake;fakegata 32;arnulf fake

     

    Denne filen leser du inn i et php script

    $readfile = file("kunder.csv"); // Les inn filen i et array som kalles $readfile
    $lines = count($readfile); // Finner antall linjer i filen
    $line = 0; // Teller for å holde styr på hvilken linje du er på
    $feltnavn = explode(";", $readfile[0]) // Legger feltnavn inn i variabelen $feltnavn
    // Her kan du evt opprette tabellen i mysql med disse feltnavnene
    $line++; //legger på 1 på $line for å hoppe til neste linje
    while ($line<$lines) { //Loop for å lese alle linjer
    $data = explode(";", $readfile[$line]); // Her legges hvert felt inn i et array, $data
    // Dvs at $data[0] er kundenummer, $data[1] er kundenavn osv.
    // Dette legger du inn i de rette felten ei mysql tabellen
    $line++; // Ikke glem denne før while-blokken avsluttes
    }
    

     

    Nå har du fått endel hjelp nå. Regner med du kan så pass php til å klare resten selv ?

     

    Dette er den måte jeg ville brukt for å overfør data fra excel til mysql.

     

    Håper det går greit ;)

  4. Hei pepsien; Me Arne :)

     

    Skulle bare teste om du hadde fikset ; i innleggene.. ikke meningen å kødde opp gjesteboka ;)

     

    Anbefaler deg å bruke et annet tegn som skille tegn, eller evt replace ; med et annet tegn, f.eks ; som vil vises som ; på siden, men ikke i tekstfilen ;)

     

    Kakkle (Arne)

     

    EDIT Glemte at & # 59 ; (skal være uten mellomrom mellom) også selvfølgelig vil bli vist som ; i dette forumet :blush:

  5. Tror du vil ha godt av å lese på php.net...

     

    Sjekk linken jeg postet i mitt første innlegg.. php.net

    Der står det om $_SESSION, $_COOKIE, $_POST, $_GET osv...

     

    php.net har løsningen på det meste ;)

    Et lite tips: Er det en funksjon du lurer på hvordan virker og slikt. skriv inn www.php.net/funksjon, så få rdu alt om den funksjonen. Eksempelvis funksjonen du lurte på: http://www.php.net/setcookie

    Her får du svar på det du spør om.

  6. Det har vel ingenting med submit eller skemaet å gjøre i det hele tatt ? $count teller jo bare antall rader i databsen som har det brukernavnet og det passordet som er tastet inn i skjemaet.

     

    Husk at mysql_num_rows returnerer en int.

    Det er vel kanskje best å teste om det er 1 rad, eller skal det være mulig for flere å ha samme brukernavn og passord ? Kan by på en god del store problemer i såfall :)

    if($count == 1) { // 1 rad med brukernavn og passord ble funnet. Log inn
    header("location:admin.php");
    }
    else {
    header("location:index.html");
    }
    

     

    EDIT: Litt smårettelser :)

     

    EDIT2: Sikkerheten på scriptet ditt er en helt annen ting. Bør utbedres

  7. Tror nok problemet ligger i if setningen din. Du legger inn antall funnet rader av spørringen din i $count, men sjekket med $_GET[count==0]. Det bli litt feil.

     

    $_GET brukes for å få tak i en variabel som er satt i urlen. f.eks index.php?id=2

    $id = $_GET["id"] vil da gi $id verdien 2.

    $_GET brukes også for å få tak i verdier fra skjemaer som sender med metoden GET istedetfor post (slik at det som skrives inn i skjemaet vises i urlen)

     

    For å lese litt om predefinerte variabler ($_POST, $_GET, $_SESSION, ...) kan du kikke på php.net

     

    Vil tippe at den if (if($_GET[count==0]))setningen vil se lik ut som for 4 år siden... (if($count ==0))

     

    /kakkle

  8. $brukernavn = mysql_query("SELECT brukernavn FROM admin WHERE brukernavn='$_POST[brukernavn]'") or die("FEIL:<br>".mysql_error());
    .
    .
    .
    $registrer = mysql_query("INSERT INTO brukere (id, brukernavn, passord, navn, epost, status) VALUES ('', '$brukernavn', '$passord', '$navn', '$epost', '$status')") or die("FEIL:<br>".mysql_error());
    

     

    Prøv det !

    Hvorfor bruker du forresten $_POST[brukernavn] i spørringen, når du allerede har en $brukernavn variabel ? som burde gjøres edel ting mer med ?

     

    EDIT: Fjernet @, ettersom du også har fjernet dem :)

  9. hmmm...ingen som har peil? jeg har sett på koden litt nå men skjønner fortsatt ikke hvorfor valuen på selectmenyen blir 0 uansett hvilkrn størrelse du velger eller hvorfor Poststed blir til

     

    Poststed: Resource id #4

     

    med queryen:

     

    $result = mysql_query("SELECT poststed FROM postadr WHERE postnr ='{$_POST['postnr']}'");
    
    $row = mysql_fetch_row($result);
    
    Poststed: $result
    

    Du skriver jo ut $result... Du mener vel sikkert å skrive ut $row, slik:

     

    prøv med echo "poststed:".$row[0];

  10. 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 ;)

  11. hent navnet på hver fil i zip arkivet med funksjonen zip_entry_name(), finn filendelsen. Dersom den er xml, lagre navnet på filen i variabelen $xmlfilnavn.

     

    Eks.: (Ikke testet, men bør fungere i prinsipp)

    $zip = zip_open($zipfile);
    if ($zip) {
    while ($zip_entry = zip_read($zip)) {
    $ext = strtolower(substr(strrchr(zip_entry_name($zip_entry), "."), 1)); // fil endelse
    if($ext == "xml") { // Filendelse er xml
    $xmlfilnavn = zip_entry_name($zip_entry) // Her får du filavnet 
    } // If $ext end
    // Her kan du f.eks gjøre ting med de andre filene i zip arkivet...
    } // while end
    } //if $zip end
    

    Med forbehold om småfeil, ala trykkfeil

     

    EDIT: Jupp... Det var nok litt trykkfeil :)

  12. Sett inn dette helt i toppen av index.php:

    <?error_reporting(E_ALL ^ E_NOTICE);?>
    

    Da får du opp alle feilmeldinger, men ikke NOTICE meldinger, så får du ihvertfall opp en feilmelding

    Jeg mistenker denne linjen:

    <?xml version="1.0" encoding="iso-8859-1"?>
    

    Der starter du jo en php-tag med <? som da indikerer at php koding begynner...

     

    EDIT: Litt annet ordvalg

  13. Det er ikke noe feil i php delen av skriptet. det er fnuttene i javascriptdelen som går litt i surr tenker, jeg... Når du kaller de funksjonene dine.(Skjønner ikke helt hvorfor du har med MM_callJS ? Hva gjør den ? Trenger du den ? Tydligvis laget i Macromedia ?)

    Prøv dette:

    echo "<a href=\"javascript:;\" onClick=\"MM_callJS('vindu(\'images/hjem/$file\',\'Bilde\')')\">
    

    Slik du har det, vil det bli:

    <a href='javacdipt:;' onlick='MM_callJS('....<--- Der slutter onclick, hvis du skjønner

     

     

    EDIT: Javascript er forresten en uting :)

     

    /Kakkle

  14. Ja, der var det ihvertfall en feil. Men likevel, så er det fortsatt noe som ikke stemmer pga. jeg for den samma meldingen hele tiden.

    Hvilken melding får du hele tiden ?

     

    Kjør alltid en or die etter en query, så kan du sjekke ting tang dersom spørringen går feil...

    $sql  = "SELECT data FROM $table WHERE felt1 = '$felt1' ORDER BY $order";
    $res = mysql_query($sql) or die("Feil i spørring: $sql<br>".mysql_error());
    

    Dersom spørringen nå feiler, så får du skrevet ut spørringen, og kan sjekke at variablene ($table, $felt1, $order) er slik som forventet...

  15. Hvorfor gjøre det så vanskelig? Trenger ikke fopen.

     

    Hvis du vil inkludere en side utifra verdien av en variabel kan du gjøre sånn:

    <?

    $sjekk = isset($side);

    if($sjekk)

    include "include/".$side.".php";

    else

    include "include/forside.php";

    ?>

     

    $sjekk vil ha en verdi lik true (1) eller false (0).

    D.v.s. at dersom ikke $side har en verdi, så inkluderer scriptet forsiden, ellers den aktuelle siden. Trenger ikke noe 404 side.

    Hmmm...

     

    Med den koden, vil det komme frem feilmelding dersom noen prøver å vise en side som ikke finnes...

    Men det er unødvendig med en if setning for å sjekke om den kan leses, og en if setning som sjekker om den ikke kan leses... Bruk heller else istedetfor den siste if setningen...

     

    Og ja, det er garantert det at du har slått av register globals som gjør at det blir feil...

     

    Det vil si at $side ikke er definert. $sjekk blir derfor false, og forsiden blir inkludert...

    Bør nok også sjekke hvilken fil som blir inkludert... Om det er en lovlig fil, liksom..

     

    Eksempel på å få verdier fra Url med register globals avskrudd:

    url: www.domain.com/?foo=bar

    i koden:

    $foo = $_GET["foo"] // $foo blir nå bar :)

     

    /Kakkle

×
×
  • Opprett ny...