Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: http://jotain/ automaattisesti linkiksi (PHP)

Sivun loppuun

riiali [09.08.2006 13:53:41]

#

Jos haen tekstitiedoston php:llä sivuille seuraavasti:
<?php echo nl2br(file_get_contents('sijainti')) ?>

niin se tulee ihan ok! Mutta miten mä pystyisin lisäämään tohon niin, että jos siellä txt-tiedostossa on http-osoite niin se tulisi sivuilleni suoraan linkkinä, jota painamalla se aukeaisi uuteen ikkunaan?

Metabolix [09.08.2006 13:57:08]

#

Säännöllisillä lausekkeilla, vaikkapa preg_replace-funktion avulla.

tsuriga [09.08.2006 22:43:17]

#

Ja turha väsätä omia, preg_replacen User Noteseista löytyy valmiita funkkareita, etsii vain sanalla 'link' tms. w3schoolsista löytynee apua uuden ikkunan aukaisuun, mutta usealla voi olla uusien ikkunoiden avaus pois käytöstä.

Niko [09.08.2006 23:11:44]

#

tsuriga kirjoitti:

w3schoolsista löytynee apua uuden ikkunan aukaisuun, mutta usealla voi olla uusien ikkunoiden avaus pois käytöstä.

Miten niin? Sekoitit popuppiin? Tässä haetaan selvästi target="_blank":ia eli <a href="testi" target="_blank">Uuteen ikkunaan</a>. Tosin voihan se avautua uuten välilehteen jos on niin asetukset :)

Blaze [09.08.2006 23:22:36]

#

target="_blank" on myös ilkeä. Jos haluan uuden ikkunan (tabin), avaan sellaisen itse, kiitos.

Metabolix [10.08.2006 01:25:49]

#

Niin, asetukset voivat sanoa myös, että se pitää avata samaan välilehteen.

riiali [11.08.2006 09:08:45]

#

eli mä haen tossa tota target=blank juttua mutta tärkeimpänä tietona kaipaisin tietoa siitä miten mä saan haettua txt-tiedosta www-linkkejä nettisivuille niin että linkit tulevat linkkeinä suoraan!

Blaze [11.08.2006 09:35:33]

#

Kuten Metabolix sanoi, regexp-korvauksella. Siis jotain tyyliin preg_replace('/http:\/\/{.*}\s/', '<a href="\0">\0</a>', $teksti);

(Vastuuvapautus: en osaa regexpiä.)

riiali [14.08.2006 10:00:17]

#

oisko kellään mitään suoraan toimivaa esimerkkiä tosta?? ei oikein ton preg_replacen käyttön onnistu!

tsuriga [14.08.2006 11:58:20]

#

php.netin manuaalin User Comments -osiosta löytyy usein näitä yleishyödyllisiä koodinpätkiä. Kuten tämäkin:

<?php

function make_links_blank($text) {
  return preg_replace(
     array(
       '/(?(?=<a[^>]*>.+<\/a>)
             (?:<a[^>]*>.+<\/a>)
             |
             ([^="\']?)((?:https?|ftp|bf2|):\/\/[^<> \n\r]+)
         )/iex',
       '/<a([^>]*)target="?[^"\']+"?/i',
       '/<a([^>]+)>/i',
       '/(^|\s)(www.[^<> \n\r]+)/iex',
       '/(([_A-Za-z0-9-]+)(\\.[_A-Za-z0-9-]+)*@([A-Za-z0-9-]+)
       (\\.[A-Za-z0-9-]+)*)/iex'
       ),
     array(
       "stripslashes((strlen('\\2')>0?'\\1<a href=\"\\2\">\\2</a>\\3':'\\0'))",
       '<a\\1',
       '<a\\1 target="_blank">',
       "stripslashes((strlen('\\2')>0?'\\1<a href=\"http://\\2\">\\2</a>\\3':'\\0'))",
       "stripslashes((strlen('\\2')>0?'<a href=\"mailto:\\0\">\\0</a>':'\\0'))"
       ),
       $text);
  }

?>

Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta