Autorius Tema: Userio vedame tekste įterpti kintamąjį  (Skaityta 2827 kartus)

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 438
  • Karma: +11/-0
    • Žiūrėti profilį
Userio vedame tekste įterpti kintamąjį
« Įrašytas: 2014-07-17 10:40:58 am »
Noriu padaryti taip, kad būtų galima redaguoti žmogui tekstą ir tarkim parašius  [vardas] , jį interpretuotų kaip tarkim toje vietoje, kur spausdina naudojamą kintamąjį $vardas.


Ar yra kažkokių paprastų būdų tam atlikti? Ar su explode'ais daryti?
Ačiū

Neprisijungęs Modestas Vaitkevičius

  • Dalyvis
  • **
  • Įrašai: 2007
  • Karma: +57/-16
    • Žiūrėti profilį
    • Apie mane
Ats: Userio vedame tekste įterpti kintamąjį
« Atsakymas #1 Įrašytas: 2014-07-17 10:51:09 am »
Sveikas,
Naudok preg_replace() ar str_replace() :)

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 438
  • Karma: +11/-0
    • Žiūrėti profilį
Ats: Userio vedame tekste įterpti kintamąjį
« Atsakymas #2 Įrašytas: 2014-07-17 10:55:10 am »
Dabar yra taip:
<?php
  
echo " Kazkoks tekstas ".$pavadinimas;
?>

O tai jei duosiu žmogui pačiam tą visą teksta pasikeisti, tai gausiu vieną kintamą tarkim $USERIO_TEKSTAS.
Tada:
<?php
  
// $pavadinimas - sugeneruotas tame faile kintamasis, kuri reikia iterpti i $USERIO_TEKSTAS
  
echo $USERIO_TEKSTAS;
?>


Ir kaip man padaryti, kad to $USERIO_TEKSTAS viduj esantis koks nors [pavadinimas] būtų interpretuojamas kaip tam faile sugeneruotas $pavadinimas.


Va, dabar gal aiskiau.

Neprisijungęs Modestas Vaitkevičius

  • Dalyvis
  • **
  • Įrašai: 2007
  • Karma: +57/-16
    • Žiūrėti profilį
    • Apie mane
Ats: Userio vedame tekste įterpti kintamąjį
« Atsakymas #3 Įrašytas: 2014-07-17 10:56:32 am »
Kažką buri čia...

Tau reikia, kad useris įveda tekstą ir ten pvz [tekstas] pakeisti į kintamojo reikšmę?

Manualai.lt Forumas

Ats: Userio vedame tekste įterpti kintamąjį
« Atsakymas #3 Įrašytas: 2014-07-17 10:56:32 am »

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 438
  • Karma: +11/-0
    • Žiūrėti profilį
Ats: Userio vedame tekste įterpti kintamąjį
« Atsakymas #4 Įrašytas: 2014-07-17 10:58:42 am »
Na tiesiog kad žmogus galėtų pasirašyti norimą tekstą ir su kažkokiu koduku įterpti į savo tekstą tarkim savo user id, savo vardą ar pnš. Bet dabar kai parašiau tą pavyzdį, žiūriu kad su str replace tai tikrai pavyks.. :D

Neprisijungęs Haris

  • Dalyvis
  • **
  • Įrašai: 833
  • Karma: +56/-0
    • Žiūrėti profilį
    • www.RubikoKubas.Lt
Ats: Userio vedame tekste įterpti kintamąjį
« Atsakymas #5 Įrašytas: 2014-07-17 13:24:01 pm »
// Situos du gali traukti is duomenu bazes
$vardas = "Bartas";
$pavadinimas = "Manualai.lt";

$output = "Jusu vardas yra: [vardas] , [pavadinimas] , [data]";

$users_vars = array("[vardas]", "[pavadinimas]", "[data]");
$replace_with = array($vardas, $pavadinimas, date() );

$output = str_replace($output, $replace_with, $output);

echo $output;

Neprisijungęs ganjabest

  • Dalyvis
  • **
  • Įrašai: 968
  • Karma: +41/-1
  • Povilas Stankevičius
    • Žiūrėti profilį
Ats: Userio vedame tekste įterpti kintamąjį
« Atsakymas #6 Įrašytas: 2014-07-19 01:07:00 am »
Paprasciausia ir teisingiausia funkcija sitam variantui.
<?php
$tekstas 
"As esu %s, man yra %d metu.";
$vardas  "Jonas";
$metai    23;
$sugeneruotas_tekstas sprintf($tekstas$vardas$metai);
?>

« Paskutinį kartą keitė: 2014-07-19 01:08:48 am sukūrė ganjabest »
Visi žmonės kaip žmonės - tik aš vienas kaip dievas!

Neprisijungęs Modestas Vaitkevičius

  • Dalyvis
  • **
  • Įrašai: 2007
  • Karma: +57/-16
    • Žiūrėti profilį
    • Apie mane
Ats: Userio vedame tekste įterpti kintamąjį
« Atsakymas #7 Įrašytas: 2014-07-19 09:51:02 am »
Paprasciausia ir teisingiausia funkcija sitam variantui.
<?php
$tekstas 
"As esu %s, man yra %d metu.";
$vardas  "Jonas";
$metai    23;
$sugeneruotas_tekstas sprintf($tekstas$vardas$metai);
?>

Klysti ;)
Useriui neduosi gi vedinėt %s ir %d ir t.t. :) Jam reikia bbCode, kuris yra [username] [metai] :)

Neprisijungęs ganjabest

  • Dalyvis
  • **
  • Įrašai: 968
  • Karma: +41/-1
  • Povilas Stankevičius
    • Žiūrėti profilį
Ats: Userio vedame tekste įterpti kintamąjį
« Atsakymas #8 Įrašytas: 2014-07-19 12:02:42 pm »
Paprasciausia ir teisingiausia funkcija sitam variantui.
<?php
$tekstas 
"As esu %s, man yra %d metu.";
$vardas  "Jonas";
$metai    23;
$sugeneruotas_tekstas sprintf($tekstas$vardas$metai);
?>

Klysti ;)
Useriui neduosi gi vedinėt %s ir %d ir t.t. :) Jam reikia bbCode, kuris yra [username] [metai] :)

Useriui ir nereikia duoti ivedinet %s ar %d , sitos reiksmes pasimamos is formos. Nu, bet kita vertus ne taip klausima supratau. O pagal klausima(jeigu jau gerai supratau) siaip priklauso kaip tas reiksmes interpretuosi. Jeigu kaip ir sakei [vardas] i $vardas, tai naudociau ne str_replace, o preg_replace ir butu daug geresnis variantas, nes nereiketu ten tu visu masyvu sudarineti.
Visi žmonės kaip žmonės - tik aš vienas kaip dievas!

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 438
  • Karma: +11/-0
    • Žiūrėti profilį
Ats: Userio vedame tekste įterpti kintamąjį
« Atsakymas #9 Įrašytas: 2014-07-25 01:05:11 am »
Aš tai šitaip dariau:

<?php

$ka_keist 
'[vardas]';
$kuo_keisti $vardas;
$keitimas_zinutes str_replace($ka_keist$kuo_keisti$visas_tekstas_kuriame_keiciama);

Manualai.lt Forumas

Ats: Userio vedame tekste įterpti kintamąjį
« Atsakymas #9 Įrašytas: 2014-07-25 01:05:11 am »