Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

Mdx91

Użytkownik
  • Postów

    1 050
  • Dołączył

  • Ostatnia wizyta

Treść opublikowana przez Mdx91

  1. Po edycji przy wysłaniu filmu o nowym tytule jak i już istniejącym wszystko przechodzi gładko tak jak bylo na samym początku (czyli tak jakby bez sprawdzania tytułu)
  2. Wkleiłem ten kod: //jeżeli wysłano formularz $this->DB->build( array( 'select' => 'COUNT(*) as test', 'from' => 'ipb_videos', 'where' => 'title = '.$this->request['title'] ) ); $this->DB->execute(); $count = $this->DB->fetch(); if($count > 0) { //juz jest } else { //nie ma jeszcze } po wysłaniu filmu z istniejącym tytułem już w bazie wyskoczył Driver error W logach z cache jest: Error: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2' at line 1 IP Address: 83.21.62.45 - /index.php?app=videos ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- mySQL query error: SELECT COUNT(*) as test FROM ipb_ipb_videos WHERE title = Auta 2 .--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------. | File | Function | Line No. | |----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------| | admin/applications_addon/other/videos/modules_public/post/submit.php | [public_videos_post_submit].mainSave | 37 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' | admin/sources/base/ipsController.php | [public_videos_post_submit].doExecute | 306 | Po wysłaniu filmu z tytułem którego jeszcze nie ma jest to samo ale z innym błędem: Error: 1146 - Table 'ponawija_foru.ipb_ipb_videos' doesn't exist IP Address: 83.21.62.45 - /index.php?app=videos ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- mySQL query error: SELECT COUNT(*) as test FROM ipb_ipb_videos WHERE title = teretre Zauważyłem że jeżeli w kodzie jest 'from' => 'ipb_videos', to w błędzie dodany jest prefiks, więc zmieniłem ten fragment na bez prefiksu: 'from' => 'videos', przesłałem film o nowym tytule i znów driver error i błąd o treści: Error: 1054 - Unknown column 'teretre' in 'where clause' IP Address: 83.21.62.45 - /index.php?app=videos ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- mySQL query error: SELECT COUNT(*) as test FROM ipb_videos WHERE title = teretre A po wyslaniu takiego samego tytułu pojawia się taki błąd: Error: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2' at line 1 IP Address: 83.21.62.45 - /index.php?app=videos ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- mySQL query error: SELECT COUNT(*) as test FROM ipb_videos WHERE title = Auta 2
  3. Daje kilka fragmentów bo nie jestem pewien który się przyda a który nie: protected function mainSave( $type='add' ) { $save = array(); Z kodem wyżej jest tego spory kawałem więc wkleiłem tylko fragment ze zmienną $save['title'] = $this->request['title']; $save['seo_title'] = IPSText::makeSeoTitle( $this->request['title'] ); $save['short_desc'] = $this->request['short_desc']; $save['cid'] = $catID; $save['last_updated'] = time(); if( !$save['title'] OR !$save['cid'] ) { $this->registry->output->showError( 'required_fields' ); } Poniższy kod jest w tym samym warunku if co ten który wyszukiwałem "$this->DB..." $save['video_id'] = $videoID; Zmienna $save jest użyta jeszcze sporo razy, ale używana do np. kodu embed itp więc nie wklejałem.
  4. Przeszukałem plik i znalazłem tylko jeden fragment: $this->DB->insert( 'videos', $save ); PS. Nie wiem czy to przydatne ale tabela która odpowiada za filmy nazywa się "ipb_videos" a kolumna odpowiadająca za tytuły "title"
  5. Rozumiem. A mógłbyś napisać jak to zrobić?
  6. Szczerze powiem że nie wiem gdzie to sprawdzić i jak
  7. Nie wiem czy o to chodziło, ale po wklejeniu tego kodu i wejściu na stronę z formularzem, na samej górze wyświetliło coś takiego: NULL array(6) { ["app"]=> string(6) "videos" ["module"]=> string(4) "post" ["section"]=> string(6) "submit" ["do"]=> string(9) "add_video" ["cat"]=> string(0) "" ["request_method"]=> string(3) "get" } Po wysłaniu filmu już się nie pokazuje nic
  8. Wrzuciłem kod do szablonu z formularzem, wysłałem film i.... film się dodał nic sie nie wyświetliło itp.
  9. Jak mniemam to ten kod wlepić do pliku submit.php? Wrzuciłem go tam i gdy klikne wysłanie filmu to pojawia się ten kod który napisałeś
  10. Mylisz się. Chyba jednak nie ;P Ale i tak za mało widoczny.
  11. Daje cały błąd (wcześniej dałem tylko fragment który był przydatny (moim skromnym zdaniem)) Date: Wed, 01 May 2013 18:09:02 +0000 Error: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 IP Address: XXX - /index.php?app=videos&module=post&section=submit&do=add_video&cat= ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- mySQL query error: SELECT COUNT(*) as test FROM ipb_ipb_videos WHERE title = .--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------. | File | Function | Line No. | |----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------| | admin/applications_addon/other/videos/modules_public/post/submit.php | [public_videos_post_submit].mainForm | 49 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' | admin/sources/base/ipsController.php | [public_videos_post_submit].doExecute | 306 |
  12. Daj kod HTML tego formularza, bo coś mi się nie wydaje. Tak troche bo ogólnie wszystkie funkcje (i inne rzeczy których nie potrafie nazwać ) wiązały się w jakimś sensie z tematem A co do tego HTML to masz na myśli szablon "wysyłki"? Bo jak przeglądałem plik submit.php to nie ma tam ani trochę HTML PS. Zamieszczam od razu szablon bo to wiadomo przyśpieszy wszystko (jeżeli o szablon chodzi ) <script type='text/javascript'> //<![CDATA[ ipb.videos.video_values = \$H( {$data['extra_videos']} ); ipb.lang['delete_confirm'] = '{$this->lang->words['please_confirm']}'; ipb.lang['no_extra_videos'] = '<i>{$this->lang->words['no_extra_video_js']}</i>'; ipb.templates['value_input'] = new Template("<li id='value_#{value_id}_wrap' style='display: none'> <input type='text' id='values_#{value_id}' name='values[#{value_id}]' size='60' class='input_text' value='#{value_url}' maxlength='254' style='margin-bottom:2px;' /> <a href='#' id='remove_video_#{value_id}' title='{$this->lang->words['remove_video']}' class='cancel'>x</a> </li>"); ipb.templates['thumbnail_upload'] = new Template("<if test="thumbnailUploadDesc:|:$data['thumbnail_type'] == '1'">{$this->lang->words['thumbnail_already_uploaded']}<else />{$this->lang->words['video_thumbnail_desc']}</if><input type='file' name='thumbnail_upload' id='thumbnail_url' /> "); ipb.templates['thumbnail_url'] = new Template("{$this->lang->words['thumbnail_url_desc']} <input type='text' class='input_text' size='50' name='thumbnail_url' id='thumbnail_url' <if test="thumbnailUrl:|:$data['thumbnail_type'] == '2'">value='{$data['thumbnail']}'</if> /> "); //]]> </script> <form action="{$this->settings['base_url']}app=videos" method="post" name="video_form" enctype="multipart/form-data"> <input type='hidden' name='module' value='post' /> <input type='hidden' name='section' value='submit' /> <input type='hidden' name='do' value='{$form['code']}' /> <input type='hidden' name='id' value="{$data['tid']}" /> <input type='hidden' name='date' value="{$r['date']}" /> <input type='hidden' name='old_cat' value="{$data['cid']}" /> <input type='hidden' name='author_id' value="{$r['author_id']}" /> <input type='hidden' name='author_name' value="{$r['author_name']}" /> <input type='hidden' name='auth_key' value='{$this->member->form_hash}' /> <div class='ipsBox_container'> <div class='post_form'> <h2 class="maintitle">{$form['title']}</h2> <fieldset> <h3 class='bar'>{$this->lang->words['vs_video_information']}</h3> <div class='message error' id='form_errors' style='display:none;'>{$this->lang->words['required_fields_js']}</div><br /> <ul> <li class='field'> <label for='title'>{$this->lang->words['video_title']}</label> <input id='title' class='input_text' type="text" size="40" name="title" value="{$data['title']}" tabindex="1" /> <span class='desc'>{$this->lang->words['vs_video_title_desc']} <font color='red'><b>{$this->lang->words['vs_required']}</b></font></span> </li> <li class='field'> <label for='short_desc'>{$this->lang->words['video_description']}</label> <select name="short_desc"> <option value='Lektor PL'>Lektor PL</option> <option value='Dubbing'>Dubbing</option> <option value='Film Polski'>Film Polski</option> <option value='Napisy'>Napisy</option> <option value='Język Oryginalny'>Język Oryginalny</option> </select> <span class='desc'>Wybierz wersje językową <font color='red'><b>{$this->lang->words['vs_required']}</b></font></span> </li> <li class='field'> <label for='category'>{$this->lang->words['vs_category']}</label> <select id='category' name='cid' class='input_select'> <option value='0'>{$this->lang->words['vs_select_category']}</option> <foreach loop="categories:$catList as $category"> <option value='{$category[0]}'<if test="catselected:|:$category[0]==$data['cid']"> selected='selected'</if>{$category[2]}>{$category[1]}</option> </foreach> </select> <span class='desc'>{$this->lang->words['vs_category_desc']} <font color='red'><b>{$this->lang->words['vs_required']}</b></font></span> </li> <li class='field'> <label for='embed'>{$this->lang->words['vs_video_type']}</label> <select id='video_type' name='video_type'> <option value='media_url' <if test="media_url_select:|:$data['video_type'] == 'media_url'">selected='selected'</if>>{$this->lang->words['vs_media_url']}</option> <if test="canPostEmbed:|:$this->memberData['g_vs_embed_video']"> <option value='media_embed' <if test="media_embed_select:|:$data['video_type'] == 'media_embed'">selected='selected'</if>>{$this->lang->words['vs_paste_embed_code']}</option> </if> </select> <span class='desc'><font color='red'><b>{$this->lang->words['vs_required']}</b></font></span> </li> <li class='field' id='media_url' style='display:none;'> <label for='media_url'>{$this->lang->words['vs_enter_media_url']}</label> <input id='media_url_data' class='input_text' type="text" size="60" name="media_url_data" value="<if test="$data['video_type'] == 'media_url'">{$data['video_data']}</if>" tabindex="2" /> <span class='desc'>{$this->lang->words['vs_enter_media_url_desc']} <a href='#' class='view_media_sites'>({$this->lang->words['vs_view_media_sites']})</a> <font color='red'><b>{$this->lang->words['vs_required']}</b></font></span> </li> <li class='field' id='media_embed' style='display:none;'> <label for='media_embed'>{$this->lang->words['vs_video_embed_code']}</label> <textarea name='media_embed_data' id='media_embed_data' class='input_text' cols='60' rows='5' tabindex='4'>{$data['embed']}</textarea> <span class='desc'>{$this->lang->words['vs_video_embed_code_desc']} <a href='#' class='view_media_sites'>({$this->lang->words['vs_view_embed_codes']})</a> <font color='red'><b>{$this->lang->words['vs_required']}</b></font></span> </li> <li class='field' id='extra_videos' style='display:none;'> <label for='extra_videos'>{$this->lang->words['extra_videos']}</label> <ul id='videos_container' style='float:left;'></ul><span class='desc'> <a href='#' id='add_video' title='{$this->lang->words['add_video']}'><strong>({$this->lang->words['add_video']})</strong></a> {$this->lang->words['add_video_desc']}</span> </li> <if test="thumbnailUpload:|:$this->settings['vs_thumbnail_upload'] OR $this->settings['vs_thumbnail_url']"> <li class='field'> <label for='thumbnail'>{$this->lang->words['video_thumbnail']}</label> <select id='thumbnail_type' name='thumbnail_type'> <option value='0' <if test="thumbnail_type_select0:|:$data['thumbnail_type'] == '0'">selected='selected'</if>>----</option> <if test="thumbnailUploadOption:|:$this->settings['vs_thumbnail_upload']"><option value='1' <if test="thumbnail_type_select1:|:$data['thumbnail_type'] == '1'">selected='selected'</if>>{$this->lang->words['upload_image']}</option></if> <if test="thumbnailUrlOption:|:$this->settings['vs_thumbnail_url']"><option value='2' <if test="thumbnail_type_select2:|:$data['thumbnail_type'] == '2'">selected='selected'</if>>{$this->lang->words['enter_image_url']}</option></if> </select> <span id='thumbnail_desc' style='display:none;'></span> <span class='desc'><i>{$this->lang->words['thumbnail_type_desc']}</i></span> </li> </if> </ul> </fieldset> <if test="showVideoContent:|:$this->settings['vs_show_video_content']"> <fieldset> <h3 class='bar'>{$this->lang->words['vs_video_content']}</h3> {$editor} </fieldset> </if> <fieldset class='submit'> <input class='input_submit' type="submit" name="Submit" id='submit_video' value="{$form['button']}" /> <input class='input_submit' type="reset" name="Reset" value="{$this->lang->words['vs_reset_form']}" /> {$this->lang->words['vs_or']} <a href='{parse url="app=videos" seotitle="false" template="app=videos" base="public"}' title='{$this->lang->words['vs_cancel']}' class='cancel' tabindex='0'>{$this->lang->words['vs_cancel']}</a> </fieldset> </div> </div> </form>
  13. Chłopaki, ja już z waszej dyskusji nie wiem nic i nie wiem czy kombinować z tym kodem czy nie jest dopracowany Jeżeli moglibyście skleić ten kod w jedną całość to byłbym wdzięczny. I jezeli mógłbym prosić o jakąś pomoc gdzie umieścić ten kod. Chyba że to nie ma znaczenia (w co wątpie)
  14. A o ile wiem to propozycje też można składać w tym dziale (mogę się mylić)
  15. To było do mnie? Jak tak to uzupełniłem ten fragment "tytułem" (który ma być sprawdzany)
  16. Próbowałem kombinować z kodem: //jeżeli wysłano formularz $this->DB->build( array( 'select' => 'COUNT(*) as test', 'from' => 'ipb_videos', 'where' => 'title = '.$this->request['title'] ) ); $this->DB->execute(); $count = $this->DB->fetch(); if($count > 0) { //juz jest } else { //nie ma jeszcze } oraz zamieniając warunek z $count (sprawdzając to co pisał Macsh15) cały czas jest to samo, zależnie od jakiego miejsca w które wmontuje kod to albo driver error albo pusta strona (co do pustej strony to próbowałem wyciągnąć jaki error siedzi ale po edycji pliku initdata.php (o ile dobrze pamiętam) to dalej jest pusta strona i nie pokazuje errorów)
  17. Też mam ten problem. Może mój temat coś Ci pomoze: http://forum.invisionize.pl/topic/37970-logowanie-do-pa-b%C5%82%C4%85d-hostingu/
  18. where domyślam sie że ma być nazwa kolumny z tytułami? Zaraz zmienie i będę dalej próbował PS. A w tym fragmencie: { //juz jest } else { //nie ma jeszcze } to komunikat dać w "echo"? PS2. Z driver error w logach jest to: Error: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 mySQL query error: SELECT COUNT(*) as test FROM ipb_ipb_videos WHERE title =
  19. Tej opcji chyba jedynie brakuje, bo reszte znajdziemy w hookach, albo aplikacjach
  20. Próbowałem wmontować ten kod do formularza, ale albo wyświetla się driver error albo pusta strona Ponizej kawałek kodu odpowiadający za dodanie nowego filmu: protected function mainForm( $type='add' ) { $data = array(); $catList = array(); $catID = intval( $this->request['cat'] ); $videoID = intval( $this->request['id'] ); $show_editor = ""; # Generate Cat List $catList = $this->registry->getClass('video_categories')->categoryDropdown( 'add' ); # Nothing to continue with. if( !count( $catList ) ) { $this->registry->output->showError( 'vs_no_cats_add_perms' ); } if( $catID && $this->registry->getClass('video_categories')->cat_data_id[$catID]['cat_only'] ) { $this->registry->output->showError( 'vs_category_cat_only' ); } if( $type == 'add' ) { if( !$this->memberData['g_vs_add_video'] ) { $this->registry->output->showError( 'vs_no_add_perms' ); } $form['title'] = $this->lang->words['title_adding']; $form['button'] = $this->lang->words['add_video']; $form['code'] = "add_save"; $data['cid'] = $catID; $autoSaveKey = 'addvideo-'.$this->memberData['member_id']; } else { if( !$this->memberData['g_vs_edit_video'] ) { $this->registry->output->showError( 'vs_no_edit_group' ); } Oraz kod z wpisaną tabelą: //jeżeli wysłano formularz $this->DB->build( array( 'select' => 'COUNT(*) as test', 'from' => 'ipb_videos', 'where' => 'nazwa = '.$this->request['title'] ) ); $this->DB->execute(); $count = $this->DB->fetch(); if($count > 0) { //juz jest } else { //nie ma jeszcze }
  21. Mam takie pytanie odnośnie aplikacji videos system. Otóż chciałbym aby przy wysyłaniu filmu sprawdzało czy nie ma już takiego tytułu w bazie i jeżeli będzie zwracało komunikat. Ale niestety nie wiem od czego zacząć i jak to ugryźć. Czy da radę to wykonać w szablonach czy już potrzeba przegrzebać pliki aplikacji?
  22. Chodzi Ci o staty z ostatnich x minut czy o legende grup?
  23. Zobacz czy masz miejsce na serwerze
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.