Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


gizmola last won the day on August 2

gizmola had the most liked content!

Community Reputation

166 Excellent


About gizmola

  • Rank
    Prolific Member

Contact Methods

  • AIM
  • Website URL

Profile Information

  • Gender
  • Location
    Los Angeles, CA USA

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. The /tmp directory is typically setup with the "sticky bit" set. Let's assume that you created the /tmp/output file using your command line execution. What is the ownership of that file? What web server are you running? There are many different configurations possible. It's possible that your script is running but it can't overwrite the original file due to ownership issues and the sticky bit. Also you might attempt to capture the return value from shell_exec and look at that: $output = shell_exec('/usr/bin/env > /tmp/output'); echo "<pre>$output</pre>";
  2. Yes, content promotion would be the idea. I can set you up as an admin for it if you want. As for the feed, it pulls rss feeds from a number of sites and caches them. It's been quite a while but I have the source for the main site in bitbucket which I think you have access to.
  3. Well it's interesting that the main site's news feed has a pretty good news feed section in it, that I've fixed a few times and expanded to include a bunch of php news aggregator sites. I still don't find the time to read any of those articles nor do I go to any of the sites from which they are syndicated, but maybe we have some visitors that do. Of course I just looked at it, and it's not been updating since August, so something got broken with it again. Your idea about the RFC group sounds pretty nice, although I do see articles about RFC activity on some of the other PHP sites from time to time. It would be cool if some or all of whatever content you develop ended up on the facebook page, because we really don't seem to do much to work with that audience or get them into the forum.
  4. Well, if you're a hardcore professional PHP developer, I think the best editor hands down is phpstorm. The features it has are overwhelming. With that said, it costs $200 + $160 for year2 maintenance if you want access to upgrades. If you want something free, I'd suggest Eclipse PDT which I have used for years and is solid, maintained and functional. After that there's the free Electron based editors Visual Studio Code, Atom and Brackets. It seems like VSCode has the most momentum but they are all capable editors that tend to have similar packages available that support php syntax and commonly desired plugins for debugging and interactive development.
  5. The 2 things have nothing to do with each other, but I will say this about SQL Injections. Forget about mysqli_real_escape_string or any attempt to escape anything, and use parameters. Use parameters and bind the values. This eliminates the possibility of SQL Injections, because no interpolation is being done, and you also no longer have to care about escaping quotes or other characters special to SQL. https://www.php.net/htmlspecialchars is something you can use to combat XSS, or https://www.php.net/manual/en/filter.filters.sanitize.php. For XSS the best solution is to store the input in the DB as is, and then do your filtration/conversion when you are going to present the string on your site/within your application.
  6. You replaced Wordpress with what? I don't know how you get the entry from the DB, or what templating looks like but let's assume you are just using something like pure PHP. I'll assume that there's a variable named "$soundFile" available with the existing URL. <?php /// various code ?> <audio controls> <source src="<?= $soundFile ?>" type="audio/mpeg"> </audio> <?php /// more php code if needed Your type#2 url's that just have the url to the .mp3 will work perfectly. Only your entries that have encoded the url inside an anchor tag would be a problem. What I'd do is fix them in the DB with a SQL statement. Tip: Anytime you do a global UPDATE like this you need to be very careful to test and have a backup. I usually will make a backup table using something like this: CREATE TABLE t_atable LIKE atable; INSERT t_atable SELECT * FROM atable; So in this example, I assume your table is named `sound` and the column to have it's data fixed is named mp3_file. UPDATE sound SET mp3_file = SUBSTR(mp3_file, POSITION('http:' IN mp3_file), (POSITION('.mp3' IN mp3_file)+4 - POSITION('http:' IN mp3_file) )); Here is a dbfiddle that proves this will work with versions as old as MySQL 5.5. Hopefully you get the idea that it locates the 'http:' and the '.mp3' and uses those positions to carve out a substring with just the URL. It works fine if there is only the url pre-existing in the column. It's also impervious to small details like whether or not the url inside an anchor tag src has quotes around it or not. Assuming you are just putting new url's in the column in the future, you would only need to run this once to clean up your db.
  7. gizmola

    phpdoc not work

    This is an ongoing problem with phpDocumentor and the JMS Serializer package. See this: https://github.com/phpDocumentor/phpDocumentor2/issues/1868 You would probably have more luck working directly through the Github issue tracker.
  8. Seems like you figured out that you needed to find where the $base variable was being set, and change that. Congrats on figuring it out, and on behalf of the the others who aided, you're most welcome.
  9. To add to what Mac said, usually there are some configuration files involved. We have no way of saying for sure without code to look at, but a typical strategy would be to set up a variable or constant that contains the site root. Mac helpfully highlighted the differences for you. You should do a search through the source files for '/home/sites' and make sure that is replaced with '/home/customer/www'. Sometimes these configurations are stored in database tables, so that might be the problem if it's not hardcoded. There is no way for us to know for sure again without looking at some of the sourcecode for the site.
  10. You might reach out and ask them if they would share info with you, unless of course you are trying to clone the site. If you're not planning on direct competition, they might be willing to share with you, but obviously the site has a lot of moving parts, and from a UI standpoint it appears to me to be a bunch of custom javascript, with some bootstrap, and as I said previously, RESTful ajax calls for data submission. It really doesn't look to me like something you can go find on github.
  11. My best guess is that it is something customized. The site is highly commercialized, and ironically exactly what the founder stated he didn't like in an interview I found: http://www.english-test.net/esl-cafe/24/index.html There are a gazillion adnetworks, with extensive monitoring and tracking. I did see that at some point they had a full time SEO person involved, as well as a distributed development team. Clearly it's nothing out of the box, but at least as a non-member, the site looks ugly and distracting to me, with the content hard to find within all the add banners, panels and modal windows. The other thing I can tell you is that it's using a REST api setup, and mapping the *.htm extension to something, which could be essentially anything on the serverside. They have taken a number of steps to obfuscate what they are using, so that indicates they don't want you to know.
  12. How about just using serialize() and unserialize(). This is what php session handling does.
  13. Yes absolutely. PyCharm is simply an editor/Integrated Development Environment. You need some sort of server environment to test. It's possible to make it work in a localhost or virtual server on your workstation, but for a smallish project like this one, probably not worth the trouble.
  • 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.