[php] Replace probleempje

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • LoBbY_1
  • Registratie: Juli 2002
  • Laatst online: 17-09 20:43
Hoi,

Ik heb bezig met een php script dat bepaalde strings moet replacen. Het is mogelijk om via een ander php script plaatjes up te loaden. Op het moment dat een plaatje word upgeload word er in een MYSQL database een code opgeslagen. Die code is de gegeven naam aan het bestand. bijvoorbeeld: Naam=server, Plaats=plaatjes\server.jpg dan is de code :server:

Op het moment dat de text word opgevraagt moet dus, als er een plaatjes code in de text staat een replace string komen.

ik heb al verschillende dingen geprobeerd, maar bij alles wat ik probeerde werd niets verplaatst :P


$rezultaat = mysql_query("select * from data where id = '$id'") or die (mysql_error());
$inh_data = mysql_fetch_array($rezultaat);

$text = $inh_data[text]; // de text die waaruit dingen moeten worden gereplaced

$rezultaat = mysql_query("select * from plaatjes") or die (mysql_error());
while ($inh_plaatjes = mysql_fetch_array($rezultaat))
{

$code = $inh_plaatjes[code];
$plaats = $inh_plaatjes[plaats];

$text = str_replace('$code','[img]$plaats[/img]', $text);

}
mysql_free_result($rezultaat);

echo $text;

heeft er iemand een id?

Een echte golver is nooit uitgeput


Acties:
  • 0 Henk 'm!

  • Roa
  • Registratie: December 2002
  • Laatst online: 03-07-2024

Roa

PHP:
1
$text = str_replace('$code','[img]$plaats[/img]', $text);
Doe $code eens zonder '

Research is what I'm doing when I don't know what I'm doing.


Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:21

crisp

Devver

Pixelated

probeer het eens zo:

PHP:
1
2
3
4
$code = $inh_plaatjes['code'];
$plaats = $inh_plaatjes['plaats'];

$text = str_replace($code, '[img]'.$plaats.'[/img]', $text);

Intentionally left blank


Acties:
  • 0 Henk 'm!

  • Roa
  • Registratie: December 2002
  • Laatst online: 03-07-2024

Roa

Ohja, $plaatst paktie natuurlijk ook niet..

PHP:
1
$text = str_replace($code, "[img]$plaats[/img]", $text);


Kan ook nog, maar crisp's manier is netter

Research is what I'm doing when I don't know what I'm doing.


Acties:
  • 0 Henk 'm!

Verwijderd

Er is in PHP een verschil tussen het gebruik van enkele quotes en dubbele quotes. Tussen dubbele quotes (") worden variabelen vervangen door hun waarde, tussen enkele quotes wordt er niets met de string gedaan.

$text = str_replace ( "$code", "[img]$plaats[/img]" );

Dit zou beter in de buurt moeten komen, al vind ik het volgende beter:

$text = str_replace ( $code, '[img]"'[/img]' );

Verder is dit lelijk: $inh_plaatjes[code];
Maak daarvan: $inh_plaatjes [ 'code' ];

Acties:
  • 0 Henk 'm!

  • LoBbY_1
  • Registratie: Juli 2002
  • Laatst online: 17-09 20:43
Geweldig :) dank jullie wel het werkt!!!

En ik zal verder proberen dan mijn code "op te schonen " :)

Allemaal bedankt!!

Ik heb nu inderdaad deze regel gebruikt

$text = str_replace($code, '[img]mapje\\'.$plaats.'[/img]', $text);

[ Voor 71% gewijzigd door LoBbY_1 op 21-04-2003 18:18 ]

Een echte golver is nooit uitgeput


Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:21

crisp

Devver

Pixelated

Verwijderd schreef op 21 april 2003 @ 18:12:
Er is in PHP een verschil tussen het gebruik van enkele quotes en dubbele quotes. Tussen dubbele quotes (") worden variabelen vervangen door hun waarde, tussen enkele quotes wordt er niets met de string gedaan.

$text = str_replace ( "$code", "[img]$plaats[/img]" );

Dit zou beter in de buurt moeten komen, al vind ik het volgende beter:

$text = str_replace ( $code, '[img]"'[/img]' );

Verder is dit lelijk: $inh_plaatjes[code];
Maak daarvan: $inh_plaatjes [ 'code' ];
Gamma! ;)

en inderdaad, een <img> tag behoort een alt-attribuut te hebben, en vooruitlopend op xhtml compliance is het netter 'm af te sluiten :)
Met error_reporting op E_ALL had je trouwens een notice gekregen op $inh_plaatjes[code]

[ Voor 15% gewijzigd door crisp op 21-04-2003 18:20 ]

Intentionally left blank


Acties:
  • 0 Henk 'm!

  • LoBbY_1
  • Registratie: Juli 2002
  • Laatst online: 17-09 20:43
haha, als jullie de hele code zien denk ik dat jullie misschien wel een hart-aanval krijgen :)

Verder ben ik ook nog niet zo lang met php bezig :)

Een echte golver is nooit uitgeput

Pagina: 1