Avatar billede tirdyr Nybegynder
03. august 2006 - 16:04 Der er 7 kommentarer og
1 løsning

Udskift Space med (ikke i databasen men i min string)

Hvordan udskifter jeg alle spaces i min string (som jeg har fra min DB) med "-". jeg er sikker på at jeg skal bruge REPLACE, men jeg er lidt usikker på om jeg kunne komme til at udskifte dem i DB i stedet hvilket jeg ikke er interreseret i..

er det noget i stil med

$item=mysql_result($result,$i,"Item");

$itemwithoutspace=$item

UPDATE $itemwithoutspace
  REPLACE(SPACE(1), '-');
Avatar billede tirdyr Nybegynder
03. august 2006 - 16:06 #1
<?
$username="i8470";
$password="*****";
$database="tobenski_dk_-_items";

mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query="SELECT * FROM $_GET[klasse] WHERE Item LIKE '%$_GET[item]%'";
$result=mysql_query($query);

$num=mysql_numrows($result);

mysql_close();

echo "<b><center>Database Output</center></b><br><br>";

$i=0;
while ($i < $num) {

$item=mysql_result($result,$i,"Item");
$creator=mysql_result($result,$i,"Creators");
$reagents=mysql_result($result,$i,"Reagents");

echo "<b>Item:</b> $item<br><b>Reagtens:</b> $reagents<br><b>Creators:</b> $creator <br><b>Link:</b> <a href='http://wowguru.com/db/syndicate.php?t=item&P=html&q=$item'>$item</a><br><hr><br>";

$i++;
}

?>

er den orgianle fil, hvor jeg for at lave item linket skal bruge det exacte navn, med "-" istedet for space..
Avatar billede Slettet bruger
03. august 2006 - 16:06 #2
Til hvad nytte?
Avatar billede tirdyr Nybegynder
03. august 2006 - 16:07 #3
tror nok jeg prøvede at svare på det inden du fik skrevet
Avatar billede tirdyr Nybegynder
03. august 2006 - 16:15 #4
Ideen er at det så ville se sådan ud..
<html>
<head><title>hejsa</title></head>
<body>
<?
$username="i8470";
$password="******";
$database="tobenski_dk_-_items";

mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query="SELECT * FROM $_GET[klasse] WHERE Item LIKE '%$_GET[item]%'";
$result=mysql_query($query);

$num=mysql_numrows($result);

mysql_close();

echo "<b><center>Database Output</center></b><br><br>";

$i=0;
while ($i < $num) {

$item=mysql_result($result,$i,"Item");
$creator=mysql_result($result,$i,"Creators");
$reagents=mysql_result($result,$i,"Reagents");
$itemlink=$item
    UPDATE $itemlink
        REPLACE(Space(1), "-");
echo "<b>Item:</b> $item<br><b>Reagtens:</b> $reagents<br><b>Creators:</b> $creator <br><b>Link:</b> <a href='http://wowguru.com/db/syndicate.php?t=item&P=html&q=$itemlink'>$item</a><br><hr><br>";

$i++;
}

?>

</body></html>


Men det virker bare ikke...
Avatar billede tirdyr Nybegynder
03. august 2006 - 16:58 #5
ingen der har en ide?
Avatar billede razmuz_dk Nybegynder
04. august 2006 - 09:39 #6
SELECT REPLACE('kat', 'k', 'h')
.. returnerer 'hat'

Det du blander sammen er REPLACE og REPLACE INTO - REPLACE INTO og REPLACE er to forskellige ting. REPLACE (når det står som en del af en SELECT fx) er bare en string-funktion på samme niveau som php's str_replace();

Håber det hjalp :)
Avatar billede tirdyr Nybegynder
06. august 2006 - 23:51 #7
str_replace(" ", "-", trim($itemlink));

gjorde tricket..
Avatar billede razmuz_dk Nybegynder
07. august 2006 - 08:56 #8
Ja, du kan også gøre det via PHP - det dur bare :)

Men hvis du tænker meget på performance og portability så er det altså bedre at formatere strenge i SQL'en.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester