metal_head
Registered
И така, дойде време да правя система за коментари. В сайта ми, потребителите могат да пишат новини, ревюта, да качват видеота и още доста такива. За всяко такова нещо си има таблица reviews, news, videos ..etc.
Искам да напиша и система за коментари към всичко това. Ето плана:
Потребителят поства коментара. В таблицата с коментари се записват името му, към какво е коментара (ревюта, новини, видеота) и ID-то на дадения артикул. До тук добре, нищо сложно. Проблема идва сега. Искам да направя система, която показва написаните от потребителя коментари и получените коментари. Написаните ще е лесно, но получените става малко трудно, защото един потребител може да пуска доста различни типове съдържание в сайта. Как ще мога да взема само коментарите, които се отнасят към артикули, постнати от даден потребител? За целта трябва да имам още едно поле в базата, да речем receiver и системата да взима потребителя, който е постнал съдържанието от базата данни със съдържанието (отново reviews, news, videos) и да го запиша в коментара, но няма ли по-лесен начин.
Подобен ми е и въпроса за личните съобщения. По PHPBB форумите потребителите могат да си виждат изпратените съобщения и да ги редактират. Освен това, могат да си виждат получените съобщения и да ги трият. Проблемът е, че като имам един запис с едно съобщение, той съдържа подател, получател, дата..примерно, индикатор дали е прочетено и съобщението. В момента, в който получателя получи съобщението, той може да го изтрие. Ако получателя изтрие записа със съобщението от базата данни, подателя ще го изгуби от списъка с изпратени. Тук решението, което ми идва на акъла е да има още 2 полета, които да обозначават коя от страните е изтрила съобщението и ако и двете страни са изтрили съобщението, тогава то наистина да се изтрива от базата данни.
Въобще, тези идеи, които имам правилни ли са, защото имам чувството, че всичко това може да стане по друг начин.
Искам да напиша и система за коментари към всичко това. Ето плана:
Потребителят поства коментара. В таблицата с коментари се записват името му, към какво е коментара (ревюта, новини, видеота) и ID-то на дадения артикул. До тук добре, нищо сложно. Проблема идва сега. Искам да направя система, която показва написаните от потребителя коментари и получените коментари. Написаните ще е лесно, но получените става малко трудно, защото един потребител може да пуска доста различни типове съдържание в сайта. Как ще мога да взема само коментарите, които се отнасят към артикули, постнати от даден потребител? За целта трябва да имам още едно поле в базата, да речем receiver и системата да взима потребителя, който е постнал съдържанието от базата данни със съдържанието (отново reviews, news, videos) и да го запиша в коментара, но няма ли по-лесен начин.
Подобен ми е и въпроса за личните съобщения. По PHPBB форумите потребителите могат да си виждат изпратените съобщения и да ги редактират. Освен това, могат да си виждат получените съобщения и да ги трият. Проблемът е, че като имам един запис с едно съобщение, той съдържа подател, получател, дата..примерно, индикатор дали е прочетено и съобщението. В момента, в който получателя получи съобщението, той може да го изтрие. Ако получателя изтрие записа със съобщението от базата данни, подателя ще го изгуби от списъка с изпратени. Тук решението, което ми идва на акъла е да има още 2 полета, които да обозначават коя от страните е изтрила съобщението и ако и двете страни са изтрили съобщението, тогава то наистина да се изтрива от базата данни.
Въобще, тези идеи, които имам правилни ли са, защото имам чувството, че всичко това може да стане по друг начин.