Gå til innhold

tussiesel

Medlemmer
  • Innlegg

    65
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av tussiesel

  1. Min første tanke var å bruke ASC istedenfor DESC, men da vil du jo få ut de tre første postene, så det hjelper ikke...

     

    Men hva med å la php snu arrayet du har hentet ut med array_reverse()?

     

    [offtopic]

    Angående timestamp som nøkkel, jeg ville laget en funksjon som, hvis den ikke fikk lagt til data i databasen første gangen (fordi det allerede lå en lik timestamp der) prøver å legge til med timestamp+1, eventuelt flere ganger. Ting som "aldri vil skje", har en tendens til å skje likevel..

    [/offtopic]

     

    -Simen

  2. Jeg vill brukt

    file() til å lese inn fila

    rtrim() for å fjerne linjeskift fra hver oppføring i arrayet

    explode() til å dele ved hvert komma

    en eller annen replace eller substr for å fjerne fnutter

     

    Da vil det ende opp med et array som er omtrent slik:

    array
    (
     [0] => array
     (
       [0] => Denbo
       [1] => Private
       og videre alle de andre verdiene..
     )
     [1] => array
     (
       [0] => 
       verdiene for neste linje..
     )
    )

     

    Jeg skal ikke ta fra deg gleden med å få det til selv ;) , men bare spør hvis du står fast på noe :)

     

    -Simen

  3. Eksempelvis om scriptet inkluderes litt ned paa siden, naar headers allerede er sendt?

    5442982[/snapback]

    Ja, det stemmer.

     

    Du kunne jo vurdert å dele det opp i to filer likevel.

     

    index.php:

    <?php
    error_reporting(E_ALL);
    /* 
    * simple shoutbox with database 
    */
    
    @include("db.php");
    
    
    $result = mysql_query("SELECT * FROM shout ORDER BY posted_date DESC LIMIT 0,10");
    while ($row = mysql_fetch_object($result)) {
    echo "posted from : ".$row->nick."<br>";
    echo "date : ". $time = date("H.i.s",$row->posted_date)."<br>";
    echo "message : ".$row->posted_text."<br>";
    echo "<hr>";
    }
    
    // write out a submit box 
    echo
    '<form action="shoutpost.php" method="post">
       <p>nick<br> 
       <input type="text" name="nick" maxlenght="60">
       <br> 
       message 
       <br> 
       <textarea name="posted_text" cols="45" rows="30" wrap="OFF"></textarea>
       <br>
       <input type="submit" value="Add"> 
       <input name="Reset" type="reset" value="reset">
       </p>
       </form>';
    
    ?>
    

     

    shoutpost.php:

    <?php
    error_reporting(E_ALL);
    /* 
    * simple shoutbox with database 
    */
    
    @include("db.php");
    
    
    if(isset($_POST['nick']) && isset($_POST['posted_text']))
    {
    $nick = $_POST['nick'];
    $posted_text = $_POST['posted_text'];
    $sql = mysql_query("INSERT INTO shout (nick, posted_date, posted_text)
    VALUES('$nick', now(), '$posted_text')") or die (mysql_error());
    }
    header("Location: http://server.com/sti/til/index.php");
    ?>
    

     

    -Simen

  4. Når du trykker 'submit' sendes det en POST-forespørsel til webserveren med de dataene du har skrevet inn. Når du senere trykker 'refresh' vil IE sende POST-forespørselen på nytt, men er så vnnlig å spør deg om du faktisk vil gjøre det.. Det er altså ikke noe du kan gjøre på serversiden for å 'resette' postvariablene.

     

    Det du derimot kan gjøre, er å gjøre slik at webleseren sender en get-forespørsel etter post-forespørselen, slik at den sender en ny get når den skal refreshe. (Litt vanskelig forklart..) Til dette bruker du header("Location.."); Den delen av koden din som tar seg av postingen blir da slik:

     

    if(isset($_POST['nick']) && isset($_POST['posted_text']))
    {
    $nick = $_POST['nick'];
    $posted_text = $_POST['posted_text'];
    $sql = mysql_query("INSERT INTO shout (nick, posted_date, posted_text)
    VALUES('$nick', now(), '$posted_text')") or die (mysql_error());
    header("Location: http://server.com/sti/til/index.php");
    }

     

    Det er viktig å passe på at <?php er det aller første som står i fila, og at det ikke skrives ut noe før linja med header (ikke engang mellomrom eller linjeskift). Hvis det gjør det vil det bare komme feilmelding.. (fordi alle headere må sendes før det kan komme noe annen tekst/html).

     

    (Dette er ikke en helt god løsning, siden den vil resultere i to forespørsler til serveren hver gang data postes, så jeg ser gjerne at noen kommer med en bedre løsning.)

     

    -Simen

  5. Det er en fin faq til gpl her: http://www.gnu.org/licenses/gpl-faq.html.

     

    Når du inkluderer en klasse som er utgitt under GPL, må også programmet ditt være utgitt under GPL. Det betyr at du forsatt kan selge programmet til de du vil, men de vil ha alle rettigheter som GPL gir, med at de kan modifisere og/eller selge det videre. Du kan heller ikke kreve at linken din skal stå der (men du kan jo sette den inn og håpe at de ikke fjerner den..).

     

    -Simen

  6. Hvis du leser i manualen på array_rand (http://no.php.net/manual/en/function.array-rand.php), ser du at den returnerer et array med så mange keyer du vil ha. Etter det jeg kan skjønne av manualen returnerer den en nøkkel kun en gang. Du kan derfor bruke noe sånt (OBS: utesta..):

    <?php
    $bilde[0] = bilde1;
    $bilde[1] = bilde2;
    $bilde[2] = bilde3;
    $bilde[3] = bilde4;
    $bilde[4] = bilde5;
    $bilde[5] = bilde6;
    
    $random = array_rand($bilde, 3); //3-tallet sier hvor mange du vil ha
    
    echo $bilde[$random[0]].'<br>';
    echo $bilde[$random[1]].'<br>';
    echo $bilde[$random[2]].'<br>';
    ?>
    

     

    -Simen

     

    (Edit: skrivefeil..)

  7. Har den trådløse routeren fast eller dynamisk ip? Hvis den har dynamisk kan du jo se på lista over hvilke iper den andre routeren har delt ut, og prøve de.

     

    Hvis den har fast ip, finnes det programmer for å søke gjennom ip-ranger. Husker ikke navnet på noen akkuratt nå.

     

    Du kan også prøve traceroute, fx 'tracert vg.no'. Hvis det kommer opp noe der før den andre routeren din, er det den trådløste.

×
×
  • Opprett ny...