0

I have a problem about this strings

currently i save some strings into the database with simple insert query and cleaning the data by this code

mysql_real_escape_string($data)

i get the data from the database using a simple query

sample input

$saveString = "You're great";

saving...

Insert into . . . values (mysql_real_escape_string($saveString))

now when i get the string i get the You're great string

When i use this code

$str = str_word_count(strtolower($fromDbString), 1);

print_r($str);

It outputs:

Array
(
    [0] => You're
    [1] => great 
)

But if the string came from the users input in textbox and i use this code.

   $str = str_word_count(strtolower($fromUserInput), 1);

    print_r($str);

I get something like this:

   Array
    (
        [0] => You
        [1] => re
        [2] => great 
    )

How do i fix the string from the database to be process like the one from the users input?

I tried htmlentities() to check the values and the output was

from db You're great from input You're great

i tried to html decode the string from db but it still outputs You're great

1

2 Answers 2

2

You could try to add addslashes():

$str = str_word_count(addslashes(strtolower($fromUserInput)), 1);

print_r($str);
Sign up to request clarification or add additional context in comments.

3 Comments

To the user input. I think the database input is already escaped.
yes it was escaped but i need an output from db to look like in user input
You can use stripslashes() to remove the slashes from the database data.
0

If you want to return an array that contains all the string words you could try this instead str_word_count

$str = preg_split("/[' ]/", strtolower($fromUserInput));
//$str = preg_split("/[' ]/", strtolower($fromDbString));
print_r($str);

1 Comment

Yes, in this part [' ] you add the delimiters for the words found in the String. And this returns an array with every word like your code str_word_count(strtolower($fromUserInput), 1);

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.