- Трябва ми php код
12
WT форуми -> PHP MySQL ASP.NET -> Трябва ми php код
Създайте нова тема Напишете отговор 
Автор Съобщение
Vladislaw
Нов
Нов

Регистриран на: 10/11/2011 6:01 pm

Support: 6
Bonus: 12
Мнения: 126
Мнение 11/07/2019 10:06 pm     Трябва ми php код Отговорете с цитат


Здравейте, имам нужда от следното нещо:

Искам да направя същото, като тук - https://www.vedi-pharma.com/authenticity-check/

Примерно в една база данни или .txt файл имам 5000 кода и когато направя проверка да изписва дали съществува кода или не.

И дали е възможно да го вградя в wordpress.
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
deam0n
Tourist Defender

Регистриран на: 01/10/2005 6:33 pm

Support: 203
Bonus: 959
Мнения: 3010
Мнение 12/07/2019 10:05 am      Отговорете с цитат


Виж това Smile

https://www.tutorialspoint.com/mysqli/mysqli_where_clause.htm
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
Vladislaw
Нов
Нов

Регистриран на: 10/11/2011 6:01 pm

Support: 6
Bonus: 12
Мнения: 126
Мнение 12/07/2019 6:32 pm      Отговорете с цитат


Е, такова ми трябва, само че не работи: http://web-tourist.net/login/login/view.php?st=2558
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
anonimen
Активен
Активен

Регистриран на: 11/06/2012 8:07 pm

Support: 161
Bonus: 321
Мнения: 1514
Мнение 13/07/2019 11:42 am      Отговорете с цитат


Ако търсиш стринг в стринг с php, ще ползваш тази функция: https://www.php.net/manual/en/function.strpos.php

Ako ще влечеш резултати от база, по-добре накарй базата да ти върне само резултатите, които те вълнуват. Както ти каза deamon, можеш още в заявката да сложиш where условие, което да филтрира търсенето.

Ако търсиш във файл, четеш файла ред по ред и действаш като в 1 ^. Ако ще търсиш стринг с нови редове, ще трябва и да прочиташ по няколко реда наведнъж, но това може да е маалко по-сложно.
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
Vladislaw
Нов
Нов

Регистриран на: 10/11/2011 6:01 pm

Support: 6
Bonus: 12
Мнения: 126
Мнение 19/07/2019 7:30 pm      Отговорете с цитат


anonimen написа:
Ако търсиш стринг в стринг с php, ще ползваш тази функция: https://www.php.net/manual/en/function.strpos.php

Ako ще влечеш резултати от база, по-добре накарй базата да ти върне само резултатите, които те вълнуват. Както ти каза deamon, можеш още в заявката да сложиш where условие, което да филтрира търсенето.

Ако търсиш във файл, четеш файла ред по ред и действаш като в 1 ^. Ако ще търсиш стринг с нови редове, ще трябва и да прочиташ по няколко реда наведнъж, но това може да е маалко по-сложно.


Не мога да се справя нещо...
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
Vladislaw
Нов
Нов

Регистриран на: 10/11/2011 6:01 pm

Support: 6
Bonus: 12
Мнения: 126
Мнение 29/07/2019 1:52 pm      Отговорете с цитат


Този код http://web-tourist.net/login/login/view.php?st=2558 сработи, само че, когато текста го няма в txt файла излиза следната грешка:

Warning: count(): Parameter must be an array or an object that implements Countable in /home/eastphar/public_html/test.php on line 59

59 ред:
if (count($result) >= 1) {

демо: http://eastpharmacy.eu/test.php (test123 го има)
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
anonimen
Активен
Активен

Регистриран на: 11/06/2012 8:07 pm

Support: 161
Bonus: 321
Мнения: 1514
Мнение 31/07/2019 3:52 pm      Отговорете с цитат


Ама то… $result не е дефинирано…

Можеш да го инициализираш до празен масив преди да почнеш го пълниш.

Гледам че директно ползва $result[] = $i;, което явно по някаква причина не се кара, а мълчаливо го създава. Само че ако не влезеш в условието нито веднъж, $result остава недефинирано, затова и после гърми.
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
Vladislaw
Нов
Нов

Регистриран на: 10/11/2011 6:01 pm

Support: 6
Bonus: 12
Мнения: 126
Мнение 01/08/2019 10:30 pm      Отговорете с цитат


anonimen написа:
Ама то… $result не е дефинирано…

Можеш да го инициализираш до празен масив преди да почнеш го пълниш.

Гледам че директно ползва $result[] = $i;, което явно по някаква причина не се кара, а мълчаливо го създава. Само че ако не влезеш в условието нито веднъж, $result остава недефинирано, затова и после гърми.


И вариантите какви са да го оправя.
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
anonimen
Активен
Активен

Регистриран на: 11/06/2012 8:07 pm

Support: 161
Bonus: 321
Мнения: 1514
Мнение 01/08/2019 11:18 pm      Отговорете с цитат


Vladislaw написа:
anonimen написа:
Ама то… $result не е дефинирано…

Можеш да го инициализираш до празен масив преди да почнеш го пълниш.

Гледам че директно ползва $result[] = $i;, което явно по някаква причина не се кара, а мълчаливо го създава. Само че ако не влезеш в условието нито веднъж, $result остава недефинирано, затова и после гърми.


И вариантите какви са да го оправя.


Както ти казах, трябва да го дефинираш:
anonimen написа:
Можеш да го инициализираш до празен масив преди да почнеш го пълниш.
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
anonimen
Активен
Активен

Регистриран на: 11/06/2012 8:07 pm

Support: 161
Bonus: 321
Мнения: 1514
Мнение 01/08/2019 11:31 pm      Отговорете с цитат


A един друг (но много мръсен!) вариант, за който се сетих, е да напишеш count($result || []). Така ако $result e falsey, ще се използва празен масив.
Споменавам го, защото ми хрумна, но е силно препоръчително вместо това да го дефинираш като празен масив още преди да му слагаш елементи.
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
topchokt
Редовен
Редовен

Регистриран на: 14/11/2008 7:48 am

Support: 22
Bonus: 39
Мнения: 2141
Мнение 02/08/2019 1:56 pm      Отговорете с цитат


Друг вариант е да провериш дали е масив и чак тогава, ако е, count:
PHP code:

if (is_array($result) && count($result) >= 1)
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
anonimen
Активен
Активен

Регистриран на: 11/06/2012 8:07 pm

Support: 161
Bonus: 321
Мнения: 1514
Мнение 02/08/2019 9:50 pm      Отговорете с цитат


Само че така ще оправи само локалния проблем - че count() не работи.
След седмица ако реши да направи друга проверка на друго място, вече отдавна ще е забравил за тази врътка и ще има да се чуди защо му се чупи кодът.

Единственото разумно решение, смея да твърдя, е да си инициализираш масива предварително. Така решаваш *всички* настоящи и бъдещи проблеми, свързани с използването на недефинираната променлива.

Останалото са само patch-ове.
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
Покажи мнения от преди:    
Създайте нова тема   Напишете отговор    web-tourist.net Форуми -> PHP MySQL ASP.NET Часовете са според зоната GMT + 2 Часа
12
Страница 1 от 2


 
Идете на:  
Не Можете да пускате нови теми
Не Можете да отговаряте на темите
Не Можете да променяте съобщенията си
Не Можете да изтривате съобщенията си
Не Можете да гласувате в анкети