-
Content Count
1,008 -
Joined
-
Last visited
Everything posted by vujsa
-
Well, you would use "less than or equal to" instead of "less than". Here is your modified code: if($goal <= $lvl){imagestring($im, 2, 150, 14, "Goal Reached, Congrats!", $black);imagestring($im, 2, 149, 13, "Goal Reached, Congrats!", $white);}else{imagestring($im, 2, 150, 14, "XP Left: $xp_left", $black);imagestring($im, 2, 149, 13, "XP Left: $xp_left", $white);} Here is some more information about comparison operators. http://forums.xisto.com/no_longer_exists/ Hope this helps, vujsa
-
Glad to hear that this resolved your issues. I look forward to your future PHP discussions. vujsa
-
No problem, just check for the image first...if (file_exists($string.png)) { $im = imagecreatefrompng("$string.png");}This way the image copy is only attempted if the image exists. As for your 100 question, I assume you mean if $goal for some reason is larger than 99... Let's say that a $goal of 99 is the maximum so if a number is larger than that, it should be reset to 99 and maybe 31 is the minimum so reset $goal below that to 31 like so: if($goal > 99){ $goal = 99;}else if ($goal < 31){ $goal = 31;}$xp_array = array(14833, 16456, 18247, 20224, 22406); // etc...$xp2 = $xp_array[$goal - 31]; I hope this answers your questions. vujsa
-
I'm glad that I could help. Yeah, the script should run much faster now. It is amazing how much easier and quicker a script can run just by changing the code a little bit. Before, the server had to check 68 conditional statements (if, else if, else) but now it only looks for one specific item in an array. If I had quickly found a pattern to the $xp2 values, it would be even quicker to do it all mathematically. Something like this: $xp2 = $goal - 31 + 14833 + (($goal - 31) * .01);This of course isn't the correct formula but if you had a formula to use instead of an array, you would save even more lines of code and speed up the script. Good luck, vujsa
-
Yes, you can have multiple images in your dynamic image. It has been a while since I've done dynamic images so I won't try to code it for you today but I'll explain how it normally works. You normally start your dynamic image script by loading a background image or setting a blank or solid colored image with imagecreate() or similar function. You then add an image over the top of that image with imagecopy() or similar function. You can then use image copy again and again and it will insert the part of the image to use into your new image where you specify. Each new image inserted will be layered on top of what ever already exists in the dynamic image. So you can imagecopy() a a button or some other image segment then do another imagecopy() to place a border around that etc... Now, for your second question... You could use a switch! switch ($goal) {case 31: $xp2 = ('14833'); break;case 32: $xp2 = ('16456'); break;case 33: $xp2 = ('18247'); break;// etc...}Not particularly better... I would use an array. $xp_array = array(14833, 16456, 18247, 20224, 22406); // etc...$xp2 = $xp_array[$goal - 31]; In this case, $xp_array[0] = 14833;So to get to get the zero index, we have to subtract 31 from $goal right! As a result, $xp_array[1] = 16456; Because 32 - 31 = 1 I hope you understand how this works. The array index starts at zero but your scale starts at 31. To get your scale to match the array index, you have to subtract 31. As a result, the following is true: 0 = 31 = 14833 1 = 32 = 16456 2 = 33 = 18247 3 = 34 = 20224 4 = 35 = 22406 You may then want to have a check to see if the value of $goal is below 31 or above 99 and act accordingly. Good luck vujsa
-
AJAX - Asynchronous JavaScript And XMLSpecifically, AJAX with PHP!JavaScript sends a request (asynchronously) to the PHP script. The PHP script uses the information and returns output usually in an XML format. The JavaScript reads the XML and updates the page.Google "AJAX with PHP tutorials" for more information.The PHP is rather easy, you do it like you were getting data from a for and then just format your output in XML.The JavaScript is a little more complicated.Just remember, the JS gets data from the page in the form of a link or form ans sends the data to the PHP script. The PHP does all of the work as far as database manipulation, data manipulation, and xml output. The JS then writes the data to the page in the manner in which you tell it to. This is the tricky part since different browsers handle different JavaScript differently. I love using the same word multiple time in a sentence! Good luck,vujsa
-
A Few Thoughts On Freelance Programming Some things Ive learned along the way.
vujsa replied to vujsa's topic in Programming
Wow, didn't expect such a great discussion would evolve from this.Since my expertise is in web development, I rarely have the opportunity to meet the client face to face and usually never speak with them verbally. Mostly IM and email which is good since I have a written record of everything!I too have a 9-5 job. Or is it 5-1? Wait, tomorrow it's 9-8!!! Obviously, keeping regular office hours for me is impossible due to my variable (more like non-existent) work schedule. Fortunately, I have a client that loves me and after I set my fee for the next 12 months, I asked for an honest opinion of how my fees were and of course, they were low. They were on the high end for Asian programmers but on the low end for American programmers. So, I raised my fees.As for getting clients. It isn't easy at first. That is why I use Guru.com. They have a lot of jobs posted and you can bid on many of them at once. I suggest smaller projects to start with. You and other freelancers bid on the job and the client hires whom they are most comfortable with. Be sure that you bid includes wording that allows for a higher fee if the project is larger than first described. Ask the client questions about the project to show that you are interested in it and hopefully give them a sense that you know what you are doing.Want to know if you are too cheap? Do a job and try to do an up sale when to project is already started. Like suggest a feature that they will likely want for an additional fee. If they immediately say yes, you are probably too low. You still haven't reached the end of their budget for the project so an extra cheap feature thrown is is a bonus for them. If they say no or ask why the feature isn't included in the original fee, you have reached their maximum budget more than likely.Now as long as you are really good about tracking your time on the project, you'll know how much you earned for the project by the hour or phase and then you'll know how much future projects should cost to do.Guru lets clients give feedback which increases your guru ranking so you look more attractive to future clients.The other nice thing about Guru, you find a job and bid when you need work. If you have an "email me" system in place, you may get a lot of requests some days and none on others. Some of the requests may be a waste of time to investigate and others not. If a former client sends an email, reply ASAP. They know you and want you back. You already know how this client works and they know how you do things so there are fewer conflicts. This is true even for clients you don't like. Take their money, do the job, and move on! Always do a good job and try to come in under budget. If you follow those two suggestions, you'll get repeat business, a good reputation, and if you do go over budget, your clients will likely be less frustrated since you are to usually have good work under budget. Clients usually understand the things happen and the sooner you let them know about an issue, the better. They may have an alternate plan in place that you can go with and get back on track. If you tell them there is a problem and you resolve it, you look like a hero!vujsa -
I've been freelancing my PHP / Web skills for about 8 months now. It seems like every job I have taken is always much larger than I planned on. About 4 months ago, I answered an ad for Joomla Tutoring! I get to the website, take a look around and realize that something is very wrong...The individual that hired me to be a tutor had hired another developer to set up the new Joomla based site and create a new template for it. Generally speaking, if you are really good at HTML and CSS, you can create a Joomla template with very little PHP knowledge.At first I was impressed with the template but later realized that the template was a widely available commercial template that had been modified greatly. The template was originally black with about 5 color options but was converted to white and only one color option was kept. Worse yet, the original had a complex CSS file structure where positioning, sizes, etc were in one file and all of the color information was in the color file for the option chosen but all of the modifications were done in the positioning CSS file including color changes! The site used Joomla 1.5 but the template was 1.0. Long story short, the developer really made a mess of things since new CSS information conflicted with information in other CSS files.The developer was hard coding content for the website into the template file which completely misses the point of using a content management system.My new client was in serious trouble with the new website and asked me my opinion and a list of fixes that needed to be completed to get the site operational. Long story short, the developer was fired and I was given the job of fixing the mess as best I could.Well, this customer has become all the work I can handle as I work on their third website...My point is, Sometime when you are looking for freelance work, look more closely at the small project that doesn't seem like it will pay very much.Where to find work?I went to Guru.com, registered as a Guru, bid on some jobs, and got a few.There are a lot of jobs at Guru. A lot more if you pay to upgrade your account! In fact, you should get used to paying Guru!They have their own payment system which you must use and it has a fee of course. 10% for basic (free) members. Customers posts jobs for free. 10% isn't that bad but the fee is only 5% for paid members but the paid membership is so high, you have to make a lot of money to make up the difference.Now for the kicker... An additional fee of %4 for credit cards! So you bid on a job for $100 and your customer pays with a credit card, you only earn $86! Then to withdraw your money can take days even if you have it direct deposited or sent to PayPal. There is also a fee of 2.5% if they pay with PayPal!I haven't tried any other services so I can't tell about them.I will say that when I finished the jobs that I bid on through Guru, I referred the client to my personal contact information if they wanted more work done in the future. Hey, I get a job through Guru, they deserve the commission on that job. If I get jobs after that that aren't posted on Guru, they don't get a commission. I figure I couldn't have gotten the first job without them so they should get their fee since I did use their services.By the way, if Guru discovers that you are accepting payment for a project you found on their site without using their payment system, they will ban your account so you might as well be safe and pay the commission for the project so you can find more work later on.By the way, if you charge a 10% fee, it really should cover all payment methods in my opinion. Otherwise, charge everyone 14% honestly and see how many people put up with that. You can ask your client to mail a check, do an E-Check, or wire transfer which are free of any fees for you but wire transfers cost the sender! Seems like Guru wants to offer a service for a fee then charge all of their costs to their users. Surprised I don't get a month statement requesting me to help out with their hosting costs!Always overestimate the cost! Figure out how much it will cost for you to do the job then ad between 10 and 25% to that! That is your bid. If you bid high and explain that the final cost of the project could go up or down based on actual work performed and problems encountered, potential employers will likely accept your offer since it is based on reality not perception. When you come in under budget, they are very please but if you go over budget, they aren't surprised or as angered. Sometimes, the bid price is the actual price so if you go over, that's your problem not theirs! If you have a customer that wants a set amount, set it high enough to cover your butt and if they say yes great, otherwise, look for another job.Don't discount yourself. Do not underbid just to get the job. You may be considered cheep and find it difficult to charge your normal fee later since your clients will expect the same low fee from you all the time or one client may find out they are paying more than someone else and quit using you.Before you start to work, explain the the client what you will be charging for, how you want your money, and any other arrangements that you need to make to protect yourself. Don't simply hope they are honest.Well, that's it for now. I look forward to your replies,vujsa
-
What would you like to layout?Are you considering doing a website theme or template?Are you wanting to start a coding project of some sort and want to know how to organize your thoughts?I guess what I mean is that since you placed this in such a general computer category and didn't give us much information, we cannot answer your question.Please give us more information. :(vujsa
-
More and more I get very irritated with news media in the United States. This is because more and more often, they are creating the news instead of simply reporting it. Wild speculation and bias opinions have lead most journalist down a dark path. You've seen it before, a journalist or his producer decides that in order to be the first to report something they should provide limited and frequently inaccurate information to the public. What they fail to understand is that when they do this, everyone is affected in some way. Let's take a statement like "One analyst suggests that gas prices my rise to $4.00 a gallon by the end of May." "One analyst"! Why wouldn't they get a majority opinion before saying something like that? The reason I ask is because the next day, the gas price goes up significantly as a result. So the media says the gas price will go up so of course, the fuel companies raise their prices. Now a shaky economy gets a little worse and everyone gets a little more nervous. To make it worse, the follow days story might have a line like "Recession likely to worsen as fuel prices increase!" Now the dollar loses more values as a result and that means more little dollars to buy a barrel of oil to make gasoline so gas prices go up again!Don't get me wrong, I live in the United States and here we have a law that protects our right to say or report anything we choose. Now for anyone that doesn't live in the U.S., you can better understand what that means. Most of the people on the planet do not share this freedom. Something like calling the leader of your country an idiot would land you in prison or worse in most of the World but here I am free to say that George Bush the President of The United States of America is an idiot! Don't worry, no government officials are going to come banging on my door and my family and I won't disappear as a result of me speaking my opinion! :(This same law allows journalist, writers, musician, film and tv makers to openly express their creativity and opinions in any media they wish as long as it doesn't infringe on the rights of anyone else and does not undermine national security. So if a journalist finds out that the U.S. government is tracking a terrorist by the satellite phone he uses, they can and have but should they? The U.S. government was tracking Osama Bin Laden by his satellite phone until a news report was released that that was how we tracked him. Obviously, he stopped using the phone. And we still haven't found him!A few years ago the was a school shooting at the Columbine High School. This was really the first of its kind. Everyone was shocked so naturally, the news organizations ran the details on the television, newspapers, and magazines as long as possible. Didn't take too long for copycats to do the same thing. Kids that would have never come up with the idea on their own now had a way to get a lot of attention and exact revenge on whomever they felt had wronged them. So, if the media had responsibly reported the minimal facts in the case and didn't keep at it for such a long time, would there have been fewer copycats?Remember the first election George Bush won? The media went and did all of their speculation and started to declare winners before all of the polls had closed that day. They are no longer allowed to report the results until every state has finished voting as a result. This is mostly because they caused such a mess of things. The candidates are declaring defeat or victory then recanting and arguing the point ending in recounts and an unsettled public. Not to mention that if you live in Hawaii, why vote if they have already declared a winner? Hawaii being the Western most state finishes their voting several hours after the rest of the United States which means that in years past, a winner was "projected" before most people in Hawaii went to vote and if your guy didn't win already, why vote for him?My point is that we have a very good law that protects us from government censorship but I believe that the media should be held accountable for what they report and they should restrict themselves to only reporting news not speculating or creating news to fit their needs. Do I think that the government should monitor the media, maybe but I would prefer to have the news organizations create their own monitoring system made up of private citizens and advised by a government officials. This would allow the media the freedom to do as they pleased as long as they all agreed that it was responsible and asked for the opinion of the U.S. government to ensure that national interest were protected. As I said, get the governments opinion but that is it for the government. Give the government the opportunity to explain why it isn't a good idea to tell Osama Bin Laden how we are tracking him!This is just my opinion,vujsa
-
in short, yes.Gamma got a few upgrades during the migration...CPU and RAM upgrades as well as the newest version of cPanel.We still have PHP5 and MySQL5.You can access the cPanel with IP address or read BuffaloHELP's topic and change yor HOST's file to point directly to your domain's true IP address.Currently, the nameservers are simply directing requests to your domain to the wrong (old) IP address.This is not the case for Xisto subdomains...The support team is continuing to work on any issues that may have popped up as a result of the migration / upgrades.vujsa
-
Phpmyadmin Doesn't Work On Gamma Server
vujsa replied to xboxrulz1405241485's topic in Websites and Web Designing
I'll submit a support ticket for this issue. vujsa -
The owners of this site also offer domain registration: https://xisto.com/ .COM $7.99 vujsa
-
The server admins are in the middle of an emergency upgrade and migration of the servers. While most of the issues seem to be resolved, the nameservers have not fully updated yet resulting in further delays. Sorry for the inconvenience. vujsa
-
Can't Access Any Site Hosted On The Server
vujsa replied to turbopowerdmaxsteel's topic in Web Hosting Support
Wow, that may be the first time anyone other than me has use the Handy PHP link in a topic! Anyhow, there was an urgent need to work on the servers and typically, these kinds of things do not go smoothly or as planned... I don't have specific information about what the trouble is but here is the official word on the subject: https://support.xisto.com/index.php?_m=np;group=default Since this is as much information as you are going to get for now and confirms that there is an actual issue that is being addressed, I am going to close this topic to further replies. Thank you, vujsa -
If you changed to user_id (numeric) instead of using usernames, then you will eliminate a lot of potential errors that could pop up. Most systems use a numeric user_id instead of a username that way the input data is formated in a predictable way and prevents errors that can come up with lower/upper case issues, special characters, etc... You probably have a user table with usernames, id's, email, etc. Just use that table as the translator! The queries are more complex but just as quick. You basically have to "JOIN" tables together to use the information all at the same time. Here is an example of such query using the PM table and the user table! "SELECT user_to.id, user_to.username, user_from.id, user_from.username, msg.message_id, msg.to_user, msg.from_user, msg.message_title, msg.message_contents, msg.message_read FROM message AS msg LEFT JOIN users AS user_to ON user_to.id = msg.to_user LEFT JOIN users AS user_from ON user_from.id = msg.from_user WHERE messageid = '$msgid' AND user_to.id = '$session_user_id'" I know it is complex but, here is your data from the query: user_to.id = 22 user_to.username = vujsa user_from.id = 1 user_from.username = Feelay msg.message_id = 321 msg.to_user = 22 msg.from_user = 1 msg.message_title = My Title msg.message_contents = Hi vujsa, thanks for the widget! msg.message_read = 1 That assumes that my id is 22 and your id is 1. You can then use the returned data however you like. It is much easier to do (depending on your point of view) to use aliases for each item like so: "SELECT msg.content AS Contents from ..." this just give you easier names to use. For information about JOIN, see here: http://dev.mysql.com/doc/refman/5.7/en/join.html For more information about aliases, see here: http://dev.mysql.com/doc/refman/5.7/en/select.html Hope this helps, vujsa
-
Well, I realize that this dicussion may be resolved but I figured it couldn't hurt to provide the information anyway. There actually is a tutorial about the suject on the forums: CMS103 - Securing Your Website, Keeping your included files from being accessed directly. Actually, I see that Feelay has read the article already. Anyway, it discusses this situation. One additional security measure for your files is to prevent them from being seen altogether. Basically, do not allow anyone to view the files in a given directory. As most of you know, on most servers if there isn't and index file (index.html) then the server makes a nice directory listing of every file on that folder! To prevent this, you can change you server setting or simply add a blank index.html file to EVERY folder on your server. If you want to get creative, you could use the following index.html file instead: <html><head><title>You Aren't Allowed Here!</title></head><body>Yeah, like we were just going to let you look around and try to see all of our super secret files and image!<br />Not to worry, they all look a lot better when viewed through the main page: <a href="domain.com/index.php">Main Page</a></body></html> Alternately, you could simply add the following to the .htaccess file in the parent directory of the folders you do not want to show indexes on: Options -Indexes Hope this helps, vujsa
-
Nicely done Feelay. I like when someone takes the time to write a tutorial about something they just learned since the learning experience is still fresh in their minds. As a result, the tutorial usually includes information that many time would be left out because the writer assumes that the reader has pre-existing knowledge of the subject. I would suggest one security addition. In read_message.php, you don't check the reader's id which means that if I were to type the following url in my browser: domain.com/read_message.php?messageid=221 Then I could read that message even if it didn't belong to me. Change your query to something like this: $message = mysql_query("SELECT * FROM messages WHERE message_id = '$messageid' AND to_user = '$userfinal'"); Which will only get the message if the message id and the user id match the message id requested. If the query returns empty, just do an error message that the "message could not be found" or "you are not authorized..."! vujsa
-
Well, the most obvious question is this, do you have a CD or DVD drive in your computer? I'll assume that you do and just need to know how to download the files and put them on your own CD/DVD. If you have a DVD burner, this is the best option but if not, you'll have to download several (about 6) ISO files. An ISO is an image of a CD which with your CD burning software you can use to create your own Linux Installation CD's. The real trick these days is finding CD ISO's since most of the mirrors only offer the DVD ISO! So you may have to settle for an older version of the distribution that you want or spend a lot of time looking for a mirror with both formats. So you download each of the ISO files to your hard drive. Once they are all downloaded, you need to open your CD burning software and choose the option to burn a CD from an image or saved project and go find the ISO's. You'll need to do this for each ISO file. If you don't know how to use your CD burning software, you'll need to inquire in the proper forums for that info. Hope this helps, vujsa
-
It is true that your computer sucks most of the dust in while turned on since it is the cooling fans that bring it in with the cool air. Additionally, due to convection, the movement of air from cool to hot etc, even without fans, your system will suck in dust. For a few dust eliminating tips, see the following topic: http://forums.xisto.com/topic/91010-topic/?findpost=1064354094 Malware! I figured that was the problem. But like I said, your new anti-virus may now find all of it. Sometimes software that you don't consider malware is just as hurtful. Ever notice how slow your system gets while your anti-virus is running! Some software titles rely on layer after layer of other programs so running on little weather monitoring program which was free and of course includes some adware relies on your internet connection which all runs through your firewall program. etc... You would be surprised by how much a system booster package actually helps. Over time your registry gets all disorganized and internal links get broken. This means that your system takes longer to perform the task because it has to take longer to find out how it is supposed to do it. Here are some optimization tips: Run a registry booster - it will detect and fix registry errors Run the disk defragmentation program on ALL drives - it organizes data on your drive to make it easier and quicker for the system to use it. Run a disk check - This will find and fix (if possible) any disk errors. Remove unwanted, unused software and data from your drives - This makes it quicker to use the data you do need. If you aren't using it, close it - don't leave unused programs running minimized or in the background. Anyway, glad to hear that your system is working better now. vujsa
-
Yeah, you got a lot more running in the background than your anti-virus!Everybody does or windows doesn't work.Anyhow, at some point in time you have installed some piece of software that included some malicious software with it. For example, many plugins for FireFox include some adware, spyware, etc...Even if you update your anti-virus, anti-spam, anti-malware software, you won't find and eliminate everything!So, you need to clean out your system...First, go into your control panel and select the "Add/Remove Programs" option.Go through the list and if you see something that you don't think you need, remove it! If you remove the wrong thing, you can always reinstall the software later.Even if you think you want to keep it, remove any trial / free software that you downloaded from the internet. Generally speaking, the installers for these can easily install several different programs at the same time and you will never be asked about each item since you already selected the "Install" option.Now, if you are a patient person, you can remove a program and test your system to see it that helped the problem. If it didn't help, then you know that that was not the problem software.If after to remove all of the junk that you have installed over time and you still have the problem, then you need to open your "Task Manage" and check which "Processes" you have running. Anything that you can't identify you need to run an internet search for. Just type the name of the file being run in your favorite internet search engine and find out what it is. If it is malware, you will find out pretty quickly since there will be several results for it stating that it is bad. Keep reading to find out how to remove any of the files that are malicious.Other than that, you'll have to search your system registry to see what services or background programs you may have running.I hope this gets you started in the right direction. vujsa
-
, yeah I missed that! Sorry about that. Been kind of tired lately I guess. Anyway, long time no see mastercomputers. Anyway, what MC told you is correct. You really need to protect yourself by checking the inserted data carefully before sending it on to the SQL query. Other than that, I think that you should be well on your way. vujsa
-
Well, we use query urls for the job. Like so: http://www.domain.com/index?username=vujsa It would be better to use a user id instead as there could be characters in the username that will have trouble in the url like spaces. But, it is up to you. Anyhow, here is the PHP needed to read the url provided: $_GET['username'] = $username;mysql_query("SELECT `user` FROM `dbname` WHERE `user` = '$username'"); I usually change the super global variable $_GET to a regular variable since they can get tricky to insert into some types of strings. I would suggest adding a few lines to ensure that whatever the link contains is valid data and now an attempt to inject data into your database. That should just about do it for you. I'm sure this will provide you with a lot of ideas and questions. Good luck with your project. vujsa
-
Try this: if ($_GET['action']!='race'){?><form name="form2" method="get" action="race.php?action=race"><tr><td>Who do you wanna race?</td><td> <select size=5 name="bike"> <option value="Derbi Senda 50">Derbi Senda 50</option> <option value="Honda NS 50 R">Honda NS 50 R</option> <option value="Suzuki ZR 50">Suzuki ZR 50</option> <option value="Yamaha DT 50 MX">Yamaha DT 50 MX</option> <option value="Aprilia RS 50">Aprilia RS 50</option> </select>-<a href="java script:launchClasses()">?</a> <input type=submit value=Register> </td></tr></form><?php}?> This is one of the nicest features available in PHP but can be very confusing at times if you forget what is an isn't going to be shown when. By the way, don't worry about the multiple topics... As long as each is different, you can have a million topics! In fact, it is easier for later users to find information and discussion they want to participate in if the topics are separate. Not that you care, but from an SEO point of view, separate topics would score higher. Hope this helps. vujsa
-
I'm so irritated with the amount of spam I get on the email accounts I have hosted at Xisto. It isn't the servers fault that I get so much junk mail! It wouldn't be so bad but my junk mail filter on my home system doesn't scan IMAP accounts which I use since my email client won't separate POP3 accounts properly. So I finally got to the point I had to do something! I'm getting about 25 junk mail messages a day spread over 5 different email accounts. If I go a few days without checking my email, I have a lot of work to do to clean out the trash! The good news it that cPanel has an email filter available that can help. Here is what I did... First, I set up an email account simply named "junkmail"! Then I go to the email filter page and click on the "Add Filter" link. We first do a filter for the body of the message by selecting "Body". We then select "matches regex". And for destination, we enter "junkmail@mydomain.com". This will filter all of your email messages and move unwanted emails to the junkmail account where you can review them prior to deletion. The regular expression I use is shown below: .*(sperm|pr(a|4)d(a|4)|(l|1)(o|0)(a|4)n|gener(i|1)c|^cum|p(o|0)rn|d(i|1)or|****|d(i|1)ck|sex|ph(a|4)(l|1)(l|1)us|pen(i|1)s|ro(l|1)+ex|(l|1)uxury t(i|1)mep(i|1)ece|c(o|0)ck|cred(i|1)t c(a|4)rd|debt|v((i|1)+((a|4))+)+gr((a|4))+|c((i|1)+((a|4))+)+(l|1)+(i|1)+s|penetr(a|4)te|b(l|1)ue.?p(i|1)(l|1)(l|1)|hyrd(o|0)c(o|0)d(o|0)ne|erect(i|1)(l|1)e|erect(i|1)(o|0)n|(a|4)nt(i|1).?ed|s(c)?h(l|1)(o|0)ng|ph(a|4)rm(a|4)cy|drugst(o|0)re).* I would list the filtered words but the forum filter will filter them out! After you set up your filter for your "Body", then do the same for "Any Header" and you'll be done. Be sure that you use the information specific to your account. You can "Discard" filtered emails but then you risk the chance that a wanted email is forever lost! I offer no warranty for this information. It may allow unwanted email to be delivered. It may also filter legitimate emails and if no junk mail location is set, it will delete such emails. This also filters outgoing email so you won't be able to send an email from your account that contains one of these filtered words. Basically, use at your own risk. This is capturing about 90% of my junk mail and hasn't filtered legitimate emails on accident. There is a filter tester available to see if certain words will be filtered correctly. I hope this helps. vujsa