• 0

Any PHP Developers Want To Team Up?


Question

So I'm working on a Social Network called MyLovr.com and it will most likely run on FuelPHP, I would've said WP + BP, but I prefer something clean in the framework, from scratch at least, and I intend to run the server on PHP 5.4, as we have the fastest server Host Gator could offer, and I prefer bleeding edge, but stable.

The social network is mostly a dating site, but I have more for it in the future as I want to make it a tool for those who need to find themselves before they reach out to others.

Link to comment
https://www.neowin.net/forum/topic/1127658-any-php-developers-want-to-team-up/
Share on other sites

Recommended Posts

  • 0

So I'm working on a Social Network called MyLovr.com and it will most likely run on FuelPHP, I would've said WP + BP, but I prefer something clean in the framework, from scratch at least, and I intend to run the server on PHP 5.4, as we have the fastest server Host Gator could offer, and I prefer bleeding edge, but stable.

The social network is mostly a dating site, but I have more for it in the future as I want to make it a tool for those who need to find themselves before they reach out to others.

interesting! but I hate most frame works with php :p I normally do it all from scratch using PDO.

  • 0

interesting! but I hate most frame works with php :p I normally do it all from scratch using PDO.

Trust me, you'll love Fuel! :D Simply because of their security features, I feel safe with em'. :)

  • Input filtering
  • URI filtering
  • XSS filtering
  • Output encoding
  • CSRF token protection
  • SQL injection prevention

What I actually want to try is using the most secure hash possible when working with user passwords, if that's considered necessary, but I know it's a bit longer than MD5.

  • 0

Trust me, you'll love Fuel! :D Simply because of their security features, I feel safe with em'. :)

  • Input filtering
  • URI filtering
  • XSS filtering
  • Output encoding
  • CSRF token protection
  • SQL injection prevention

What I actually want to try is using the most secure hash possible when working with user passwords, if that's considered necessary, but I know it's a bit longer than MD5.

you can use sha512 with salt for passwords passwords need to be hashed ... I would also consider encrypting the WHOLE database its a little heavier on the server but if you have alot of personal data you dont want any leads of people to start reverse / social engineering happens

  • 0

you can use sha512 with salt for passwords

Ahh yea! I hear it's actually better than bcrypt. I just need to use the right package for FuelPHP, also with the ability to login with Facebook and Twitter. I think NinjAuth was it. As far as login and getting user info from the database, that'll be my biggest concern for, I need a team for securing and escaping any code that's been created along the way.

How would you want to go about securing the whole database? Besides also making use of SSL later on.

  • 0

Ahh yea! I hear it's actually better than bcrypt. I just need to use the right package for FuelPHP, also with the ability to login with Facebook and Twitter. I think NinjAuth was it. As far as login and getting user info from the database, that'll be my biggest concern for, I need a team for securing and escaping any code that's been created along the way.

How would you want to go about securing the whole database? Besides also making use of SSL later on.

personally ... I would just use PSK with a selected key of choosing ... then all you have to do is keep that key safe.... PDO also stops SQ injection as well as MYSQL escape string ... but no need to use escape string when using pdo I beleive

  • 0

PDO, like mysql and mysqli does not stop SQL injection by default, you have to use it properly to help reduce your SQL injection risks, study the PHP documentation well.

You're basically asking for someone to team up with to make an entire website... As the single creator of a pretty unsuccessful but large-scaled social networking site... Read my signature, two people won't get a large successful site done quickly, 4 years now and it's still not complete.

If you're planning to make a commercial site, then you'd need to stay current with the times and keep up with the large sites, for example.

SHA512 multiple times with a unique salt for each password, you can store the password in sql like this; <hashed password>:<salt> then get the password field from the database, hash the supplied password and see if it matches the hashed password or not.

  • 0

PDO, like mysql and mysqli does not stop SQL injection by default, you have to use it properly to help reduce your SQL injection risks, study the PHP documentation well.

You're basically asking for someone to team up with to make an entire website... As the single creator of a pretty unsuccessful but large-scaled social networking site... Read my signature, two people won't get a large successful site done quickly, 4 years now and it's still not complete.

If you're planning to make a commercial site, then you'd need to stay current with the times and keep up with the large sites, for example.

SHA512 multiple times with a unique salt for each password, you can store the password in sql like this; <hashed password>:<salt> then get the password field from the database, hash the supplied password and see if it matches the hashed password or not.

me and a partner completed a social networking site in 6 months ... we still need to cross some Ts but its pretty much there ... sad thing is we just dont have the cash or time to promote it seeing as we are both in studies .... and I know it does not protect by default but if you code it right then its fine :p trust me I had trouble with my own code at one point because i had to o something with certain expressions but my code blocked it all..... so we put it on hold untill we are done with studies

  • 0

Because FuelPHP has so much that covers many of the risks in several functions, I say it could be done a bit faster, we just need to be able to do the basics of gaining/entering user info and than advancing & escaping the same functions later on, that's why I prefer doing a invite only testing for that reason.

  • 0

What I would strongly recommend to you is that, although is difficult to use because you'll need to learn to use the framework, is to use a CMS such as Drupal.

You'll get most of the features out of the box, and the only thing you'll need to do is learn how to write modules.

But, if used correctly, you can speed up at a quite astonishing speed. Furthermore it will be extremely flexible since you can manipulate all the permissions for your users.

  • 0

What I would strongly recommend to you is that, although is difficult to use because you'll need to learn to use the framework, is to use a CMS such as Drupal.

You'll get most of the features out of the box, and the only thing you'll need to do is learn how to write modules.

But, if used correctly, you can speed up at a quite astonishing speed. Furthermore it will be extremely flexible since you can manipulate all the permissions for your users.

I'm honestly more of a WordPress guy than Drupal. FuelPHP can contain many (optional and made by the staff & community) modules and engines that should be carried, including permissions for the users. It's best creating it from scratch on this FuelPHP, because CMS's are honestly a waste of space when it comes to available features and how it's meant to be used.

Also, remember, I plan on using the latest of PHP 5.4 and eventually 5.5 when it's made stable next year, so some things won't come as clean if I use CMS's.

  • 0

Use Symfony.

It looks like Symfony's respectively way ahead as far as being up-to-date with web development. Never heard of them and yet they look more advanced as a framework.

From various comments in this thread, I can see why I'd never ask certain people for system architecture advice...

You're right, but everywhere there is an argument for what's best towards something, but that's what makes startups and changes more reasonable and digestible.

  • 0

From various comments in this thread, I can see why I'd never ask certain people for system architecture advice...

No kidding.

interesting! but I hate most frame works with php :p I normally do it all from scratch using PDO.

If you're writing PHP from scratch you'l failing from the start. You'll want a good framework - Symfony is what we used at my last job.

SHA512 multiple times with a unique salt for each password, you can store the password in sql like this; <hashed password>:<salt> then get the password field from the database, hash the supplied password and see if it matches the hashed password or not.

Why on earth would you do this instead of creating a separate column. Wow.

What I would strongly recommend to you is that, although is difficult to use because you'll need to learn to use the framework, is to use a CMS such as Drupal.

Anyone suggesting Drupal is out of their mind, to put it bluntly.

Ahh yea! I hear it's actually better than bcrypt. I just need to use the right package for FuelPHP, also with the ability to login with Facebook and Twitter. I think NinjAuth was it. As far as login and getting user info from the database, that'll be my biggest concern for, I need a team for securing and escaping any code that's been created along the way.

How would you want to go about securing the whole database? Besides also making use of SSL later on.

A good framework will handle quite a lot of this for you. And you secure the database by permission, encrypting it is was overkill and wouldn't even do anything since the private key needed to read it would be easily accessible even in a hack.

Symfony uses a salt from memory, and then hashes the password 1000 times over (or any number you want) before storing it.

  • 0

No kidding.

If you're writing PHP from scratch you'l failing from the start. You'll want a good framework - Symfony is what we used at my last job.

Why on earth would you do this instead of creating a separate column. Wow.

Anyone suggesting Drupal is out of their mind, to put it bluntly.

A good framework will handle quite a lot of this for you. And you secure the database by permission, encrypting it is was overkill and wouldn't even do anything since the private key needed to read it would be easily accessible even in a hack.

Symfony uses a salt from memory, and then hashes the password 1000 times over (or any number you want) before storing it.

I respect your thoughts on this, I'm definitely looking for the most advanced framework possible to make all of this happen through php 5.4 & how to make this really secure, but fast at the same time. This is it, I'll go with Symfony.

  • 0

If you're writing PHP from scratch you'l failing from the start. You'll want a good framework - Symfony is what we used at my last job.

Why on earth would you do this instead of creating a separate column. Wow.

Writing PHP from scratch = fail? You're talking pure crap.

Also remember various 'frameworks' have license restrictions, if they don't follow them expect to be screwed over.

Plus you'd have to keep the framework updated in case any security flaws come out, and you learn NOTHING about security using a framework unless you made the framework.

Seperate column slows things down, not very noticable in a small database but when you've got millions of rows and a high database usage, you'd notice it.

  • 0

Writing PHP from scratch = fail? You're talking pure crap.

Also remember various 'frameworks' have license restrictions, if they don't follow them expect to be screwed over.

Plus you'd have to keep the framework updated in case any security flaws come out, and you learn NOTHING about security using a framework unless you made the framework.

I work professionally as a software engineer so I assure you I'm not talking pure crap. Trying to do anything in bare PHP will more than likely end up in a unmaintainable mess. An MVC framework will compartmentalise everything quite nicely and make future changes much quicker and simpler.

How long would it take you to write your own role-based permissions system, or multi-step forms, or a CRUD control panel? With a framework those could just be config file changes, or a single command line to auto-generate a template-based basic control panel to get you start.

Symfony is supplied under the MIT license, free for commercial and non-commercial use.

Yes, you have to keep a framework updated. If you're writing code properly it should be rather straightforward as your code is separate from the framework's. Updating Symfony is just a simple git pull.

Learning about security isn't the purpose of a framework - you learn about security by learning about security (and experience, of course). I'd put my eggs in the thoroughly unit-tested, open source framework basket than anything written adhoc anyday.

Seperate column slows things down, not very noticable in a small database but when you've got millions of rows and a high database usage, you'd notice it.

Ridiculous. For one, string operations are quite expensive, and two, if your database is noticably slower because you added a single extra column then you've probably got other problems like misconfiguration, no-cache, or simply bad hardware.

  • 0

Ridiculous. For one, string operations are quite expensive, and two, if your database is noticably slower because you added a single extra column then you've probably got other problems like misconfiguration, no-cache, or simply bad hardware.

It's a good thing I have the fastest server Host Gator could offer. Sticking with Symfony since their working with the latest PHP, I'm gonna learn more about their system while I do want a bit of help to get all the plans going for the site and it's features.

  • 0

It's a good thing I have the fastest server Host Gator could offer. Sticking with Symfony since their working with the latest PHP, I'm gonna learn more about their system while I do want a bit of help to get all the plans going for the site and it's features.

Symfony's very powerful, but it was very unweildy the first time I was introduced to it at that internship, later job. It took about 6 months to be comfortable working with it. There's also the 1.x versions which you might find simpler than the restructured Symfony 2.

  • 0

It seems to show similarity to FuelPHP but with more useful functions as if I could work with Pagoda Box.

If anything, I should be able to get a good feel of it when January hits. :)

Symfony has caching functionality, and caching on different "slots" of the layout. I wrote something were a couple of columns pulled data from twitter/fb which are cached for a few mins, for example.

I spoke with my old company again last week and they actually said they've moved to some caching server software (whose name I forget) that sits in front of the HTTP server and it resulted in 90% of the requests hitting the cache and never touching a backend or database which improved performance significantly. Of course this always depends on how frequently you want things to update.

With that and improvements they took on a company's servers from 4 HTTP, 8 MySQL (the homepage had like 3000 queries, which they also fixed) down to like 1 HTTP and 4 MySQL. They're migrating it to AWS now too so they can scale things up or down much more quickly.

  • 0

Symfony has caching functionality, and caching on different "slots" of the layout. I wrote something were a couple of columns pulled data from twitter/fb which are cached for a few mins, for example.

I spoke with my old company again last week and they actually said they've moved to some caching server software (whose name I forget) that sits in front of the HTTP server and it resulted in 90% of the requests hitting the cache and never touching a backend or database which improved performance significantly. Of course this always depends on how frequently you want things to update.

With that and improvements they took on a company's servers from 4 HTTP, 8 MySQL (the homepage had like 3000 queries, which they also fixed) down to like 1 HTTP and 4 MySQL. They're migrating it to AWS now too so they can scale things up or down much more quickly.

That makes perfect sense, since this is based on public information being updated, I want to cache-on-update. Not only that, I want to set the cache at levels where, if it's the user profile, cache level is 1, but where you're searching, cache will be at level 3 as there's only an importance for looking for the user itself instead of the info, yet.

I use CloudFlare, so I originally had a plan on saving the requests that way, but I do need something more detailed since privacy is an issue, so not everything can be handled outside the box.

  • 0

Honestly, Symfony is one hell of a framework. Currently taking a look at the profiler and there are lot of things I don't get, even Authentication is what I'm truly trying to understand along with the fact that there's index.

Or seeing it as an MVC, I suppose I could create index.php through the controller. But yet, I don't have enough knowledge yet to do so, so I'm pretty much not trying to touch the system til I understand the basics.

  • 0

+1 for Symfony2. All the other frameworks are a little outdated. There seems to be a lot of people who build sites for hobbies; professional developers will point you to Symfony2 or ZendFramework since they're pretty much the most serious frameworks right now. The rest can be arguably as good, but as far as the latest and greatest Symfony2 or ZendFramework are your bet.

I may join up because I've been developing projects that don't need a framework of such scale. It'd be nice to get to work more with Symfony2.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Motrix Next 3.9.6 by Razvan Serea Motrix Next is a modern, open-source cross-platform download manager built as the official next-generation successor to the original Motrix project. It has been completely rewritten using Tauri 2, Vue 3, TypeScript, and Rust, while still relying on the powerful Aria2 download engine for high-speed multi-protocol transfers. The app supports HTTP, HTTPS, FTP, BitTorrent, ED2K and magnet links, offering advanced features like multi-connection acceleration, task scheduling, bandwidth control, and batch download management. With a significantly reduced install size (around 20MB), it focuses on being lightweight, fast, and resource-efficient compared to traditional Electron-based download tools. Designed for Windows, macOS, and Linux, Motrix Next delivers a clean, modern UI inspired by Material Design 3 principles, with smooth animations and a minimal workflow. It improves usability through better download organization, system tray integration, and enhanced torrent handling including selective file downloads and tracker management. Motrix Next features: Multi-protocol downloads — HTTP, FTP, BitTorrent, Magnet, .torrent, ED2K, and Metalink tasks BitTorrent — Selective file download, DHT, peer exchange, encryption controls, metadata caching, GeoIP peer flags, and tracker probing Browser extension integration — Embedded Extension API with independent authentication, download confirmation, smart auto-submit, filename hints, referer/cookie forwarding, and real-time controls (Chrome Web Store · Edge Add-ons) Safe filename handling — Content-Disposition, RFC 2047, non-UTF-8, percent-encoded, and extensionless URL resolution with path traversal sanitization Download organization — Favorite and recent folders, optional file-type categorization, stale-record cleanup, and completed history backed by SQLite Concurrent downloads — Independent controls for active tasks, HTTP connections per server, segments per file, and BT peer limits Speed control — Global and per-task upload/download limits with day-of-week and time-of-day scheduling System integration — Tray operation, optional tray speed display, macOS Dock badge/progress, protocol handlers for magnet://, thunder://, and motrixnext:// Lightweight mode — Destroys the WebView on minimize-to-tray while Rust keeps the engine, task monitor, notifications, history, and extension routing alive Notifications and power options — Native task start/complete/failure notifications, keep-awake during downloads, and optional shutdown after completion Network controls — Scoped proxy support for downloads, app updates, and tracker updates, plus system proxy detection Auto-update channels — Stable, Beta, and Latest Across Channels policies with separate download and install phases Diagnostics — Structured logs, exportable diagnostic ZIPs, database integrity checks, automatic DB rebuild, and Linux GPU rendering fallback Personalization — Light/dark/system theme, 10 color schemes, 26 languages, and first-launch system language detection Motrix Next 3.9.6 changelog: New Features Clipboard management — App-owned copy actions no longer trigger the Add Task auto-detect popup. aria2 input compatibility — Multi-line aria2-style task input is supported for URLs with per-task options such as out=. BitTorrent IPv6 DHT — Added IPv6 DHT support and related configuration. File category URL patterns — File category rules can match URL patterns with validation and localized hints. Task status tags — Added clearer waiting and sharing states for task cards. Download event bridge — Added an aria2 WebSocket event bridge for faster download notifications. Improvements Improved task list transitions and preserved task state during tab switches. Kept RPC origin access enabled for local integrations. Restored AppImage stripping in release builds after beta validation. Added localized preference guidance across supported languages. Download: Motrix Next 64-bit | ARM64 | macOS ~20.0 MB (Open Source) Links: Website | macOS / Linux | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • Segra 1.6.2 by Razvan Serea Segra is a free, open-source OBS-powered game recorder offering fast gameplay capture, instant clips, AI highlights, deep game integration, and seamless uploads—perfect for gamers, streamers, and content creators. Lightweight, fast, zero bloat. Segra key features: Automatic Game Recording: Begin capturing gameplay the moment your game launches, with zero manual setup. Instant Clipping: Save important moments instantly using a customizable hotkey—perfect for highlights, montages, or quick shares. Segra AI Highlights: Let Segra automatically detect kills, assists, deaths, and key events to generate polished highlight reels without manual editing. Gameplay Uploads: Upload recordings and clips directly to Segra.tv for fast sharing and cloud access. Deep Game Integration: Enjoy advanced game-data tracking across hundreds of supported titles, enabling smart highlight generation and stat-informed clipping. High-Performance Capture: Record up to 4K at 144 FPS using OBS-powered technology with minimal performance impact, supporting NVENC, AMD VCE, and custom quality controls. Segra Editor: Edit recordings easily with timeline controls, segment management, and event-based navigation to build the perfect clip. Customization Options: Adjust hotkeys, output formats, storage paths, codecs, capture quality, and performance settings for a tailored recording experience. Segra 1.6.2 changelog: UI: Improved the transition from the loading skeleton to the real content card. Security: Added Segra.dll code signing and automatic VirusTotal upload. Settings: Fixed the settings header to highlight Account when scrolled to the top. Recording: Updated OBSKit.NET to 1.4.1. Download: Segra 1.6.2 | 74.5 MB (Open Source) View: Segra Homepage | Github | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • Hey Google, these are the Gemini features I want in 2026 by Aditya Tiwari Google Gemini has been around for over three years. The AI chatbot started its journey back in 2023 (as Bard) when ChatGPT was already a talk of the town. However, it quickly attracted criticism after misrepresenting facts about the James Webb Space Telescope. The search giant spent a year fine-tuning Bard before rebranding the chatbot and its underlying generative AI model to Gemini, drawing inspiration from NASA's first human spaceflight program. Note that Bard was initially powered by LaMDA and PaLM 2; Google has since added several new features and integrations to Gemini. That said, there is scope for improvement and a gap for new features. I have been using Gemini for a while now and have realized that the chatbot lacks several features, making it harder for me to research across topics. These are mostly function-over-form updates that can improve the overall experience. Delete individual messages from a conversation Image via DepositPhotos.com One good thing about Gemini is that it can maintain context throughout the conversation. But things might get chaotic when you want to ask a related question, but don't want it to be part of your conversation in the long run. You can't ask that related question in a fresh chat because Gemini will lose the active conversation context of what you're trying to research. If Google allowed you to delete individual question/answer pairs, you could simply ask about a sub-topic and remove it from the conversation to create a smooth flow of important stuff. Offline mode Image via DepositPhotos.com A big pain of using Gemini daily is that everything loads from the cloud. It takes time for your chats to appear, and you can't view your conversation history while offline. To get a better idea, you can open the Gemini app and see how it looks without an internet connection. While Gemini models run in the cloud, it wouldn't hurt if Google could store chats (at least the text part) on the device so we can refer to them when offline. Google can also offer a lightweight version of its AI model to help with basic drafting, summarization, and other tasks. It has the Gemini Nano model, which can perform on-device processing on Google Pixel, Samsung, and some other Android brands, but it's a system feature and not related to the cloud-based Gemini app. Make temporary chats permanent I can't thank Google enough for taking the time and effort to add incognito mode or temporary chat mode to the Gemini app. It lets you have conversations without worrying that the topics will end up in your chat history or used for model training (at least on paper). Google claims that it doesn't use your temporary chats to "personalize your Gemini experience or train Google’s AI models." However, the data is stored "up to 72 hours to respond to you and to process any feedback you choose to provide." That said, I often start researching something in a temporary chat, only to realize the chatbot's answer is good enough to refer to later. Sadly, Gemini doesn't have an option to make such temporary chats permanent. In other words, I won't be able to follow up on it if I close the temporary chat. I'm left with alternatives like copying the answers into notes or another app. My digital life will get a lot better if Gemini gets a button to make temporary chats permanent. Collapse answers for a cleaner view You're heavily invested in your research game and suddenly feel the need to go up in the chat to recall something. This is when the conversation thread starts to feel like an overwhelming, unending wall of questions and answers. What if Google added a way to collapse Q&A pairs in the Gemini chat thread? It would look quite clean and easy to navigate. You'll quickly get an overview of everything you have discussed with the chatbot. Add buttons to jump between messages Suggested mockup of the feature. This reminds me of a small but useful Gemini feature that Google could add to its chatbot: the ability to hop between prompts in a conversation. Just add simple up- and down-arrow buttons, similar to YouTube Shorts, so people can quickly scroll through the messages. A table of contents or Chat Overview It's hard to get a bird's-eye view of everything you have discussed with the chatbot during a lengthy conversation. This is where a table of contents, or Chat Overview, displayed at the top of the screen, possibly in a drop-down button, might come in handy. You'll be able to get an overview of the chat and jump between messages, serving as an alternative to the up/down arrow buttons. Temporary mode for Gemini Live Image: Google You can use Gemini Live to have real-time conversations with the chatbot, which feels like you're talking to someone in the same room. However, a downside is that Gemini Live doesn't work in Temporary Chat mode, so all your conversations end up in the chat history. Google should consider expanding the temporary chat mode to include Gemini Live. Default to a specific chat One thing that feels somewhat annoying to me is that Gemini always opens in a new chat, whether on web or mobile. Sometimes, you want to return to your last chat. Google can take cues from web browsers, which let you choose whether you want to go to a new tab or a specific web page(s). Gemini can also have options to default to a specific chat when reopened. That said, generative AI chatbots have endless possibilities given the vagueness of their work. You can mold them the way you want by attaching different connectors, adding custom instructions, and including source files. It remains to be seen what Google has in store for future updates and whether anything from this wishlist gets the green light. The search giant released a stream of new Gemini updates in recent months, including Gemini 3.5 Flash and Gemini Omni Spark, adding that it now has 13 products with more than a billion users each. What do you want to see in the Gemini app? Tell us in the comments.
    • Thank you for the post. Just a FYI that links to an outside site or promoting specific software is considered spamming here. Asking general questions is fine.
  • Recent Achievements

    • Conversation Starter
      sumytbe earned a badge
      Conversation Starter
    • One Year In
      B4dM1k3 earned a badge
      One Year In
    • One Year In
      DarkWun earned a badge
      One Year In
    • Dedicated
      Almohandis earned a badge
      Dedicated
    • Dedicated
      JuvenileDelinquent earned a badge
      Dedicated
  • Popular Contributors

    1. 1
      +primortal
      507
    2. 2
      +Edouard
      181
    3. 3
      PsYcHoKiLLa
      86
    4. 4
      Michael Scrip
      78
    5. 5
      Steven P.
      76
  • Tell a friend

    Love Neowin? Tell a friend!