Jump to content

requinix

Administrators
  • Posts

    15,229
  • Joined

  • Last visited

  • Days Won

    427

Everything posted by requinix

  1. Could be them marking as spam. Make sure your unsubscribe link is obviously visible at the bottom of the email. Consider disabling the recipients and sending them a one-time "are you still there" notification. For comparison, a spam rate of 5 in 500 is high. Note that spam and bounce reporting is another thing paid services offer.
  2. You really should go for a paid service. Many of them bill based on volume and usage, not on a monthly or annual basis. Consider what it will cost you just trying to maintain all this email stuff. If you must do it yourself then you need to get a dedicated server/IP address and set up SPF and DKIM records for your domain. You also need to stay on top of your bounce rate to make sure that doesn't get you (temporarily) blacklisted.
  3. $teamnaam = $lidnummer = ''; That's the only time you ever assign values to those variables.
  4. How about posting the rest of the code instead of just that one line?
  5. Make sure you're doing everything with the same encoding - preferably UTF-8. What operating system? IIRC Windows and Linux deal with it differently.
  6. It's an Apache module. Look in your Apache setup to see if you have it.
  7. Guess again. Too bad. Doesn't matter. Nobody cares what the names of your indexes are as long as you didn't manually name them something stupid.
  8. Yes. Is it an actual foreign key as in you told MySQL it's a foreign key and there's now a constraint and index for it? No. Stop that. The ID is a primary key. It is unique by itself. Do not combine it with some other column to create a composite key. That's stupid and wasteful and did I mention stupid. Technically no, because if you don't then MySQL will do it for you. Which is what the documentation says, so either you didn't read the documentation or... well, that's it. I stopped reading your question when you mentioned the dumb composite key thing again, but the answer is probably either "no" or "don't do that because it's stupid".
  9. No "programs". Use a third-party service.
  10. Switch to a JSON data type for that column, deal with any invalid data that crept in, then create a VIEW that does the nasty work of extracting values and parsing strings and whatever. Then use the VIEW for your deduplication work.
  11. Why are you storing JSON in there? Can you switch to a JSON data type? Does it have to be SQL to get the information, given that code could probably do it more easily?
  12. A 500 means there's something wrong with your script. Could be a syntax error. But it's really hard to spot syntax errors when you only post "very simplified" code. Do you know how to configure php.ini settings on your server(s)? Change display_errors to "on" and error_reporting to -1. Then restart your web server and/or PHP and try running your script again. There should be error messages this time.
  13. Do you have mod_security installed?
  14. I think you're creating something far more complex than you actually need.
  15. If you want to send something to the browser then there must be a connection open. Which is what the spinning circle is telling you. If you don't want the spinning circle then you need to keep the open connection over something like AJAX or a WebSocket. Which is a different (but better) design than what you have right now.
  16. Yes: identify what the problem is with the header and adjust your code to make the problem go away. If you weren't aware, the filename can't have any sort of directory path in it.
  17. I'm not sure exactly what the problem you're facing is, but if you want ideas for how to clean up the code... Instead of trying to build the whole query at once, build the pieces of it and then assemble it at the end. In your case it seems the only concern is the WHERE conditions. Use an array to track all the conditions you want, then join them together with ANDs to get the full clause, then add that in to your main query. Goes like $conditions = []; if ($some_condition) { $conditions[] = "some condition"; } if ($other_condition) { $conditions[] = "other condition"; } // ... if ($conditions) { $where = "WHERE " . implode(" AND ", $conditions); } else { $where = ""; } $query = " SELECT fields FROM table {$where} ORDER BY fields LIMIT whatever ";
  18. If you don't know any PHP then the first step is to learn some PHP. There are plenty of resources on the internet to do that, and you're going to be the one who knows what learning style works best for you. Maybe you like those online "academy" things. Or maybe YouTube videos. Or maybe online tutorials. They're all different styles for different people.
  19. Browsers are liable to ignore a Content-Disposition header if it suggests a bad filename. Look into whether that's the case for you.
  20. Since your code is already written to assume there is a $link variable it can use, and since the name of the parameter there is also "link", you don't need to do anything else. At least not anything inside the function. Since it requires an argument, you do have to pass that value into it when you call the function. Which happens to be a variable also named $link. Note that's two different variables: the one on the outside is separate from the one on the inside, and they just happen to be named the same thing. Just like with people.
  21. Variables defined outside of functions are not available inside of functions. Pass $link as a function argument.
  22. I don't care. If they can't remember their passwords then it's their fault. It's not your job to give them easy to remember passwords. Anything that suggests using MD5 for passwords is bad and you should never, ever look at again. Aren't you going to tell the students their passwords? I don't care how "sensitive" you think this is. A password is a password and there is no excuse for doing it wrong.
  23. Don't use their student numbers. If you create passwords based on something any student can know, then you create passwords that any student can know. Create a random password. It takes no effort to do this, and there is absolutely no good reason to do it the dumb way when a better way is available and easy. bin2hex(random_bytes(6)) That's all it takes.
  24. Have you already started by understanding how SOAP works in PHP? Seen the extension and examples for how to use it?
  25. Keep thinking. If the one column is unique then any search including that column will be able to find the corresponding row...
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.