• Как отсортировать строки?

    @Ablovka Автор вопроса
    В папке лежат N файлов с ключами для игр. В каждом файле одинаковое кол-во ключей для определенной игры.
    Код создаст файл (keys.txt) в котом будут массивы по N ключей от разных игр, с разделителем (пустая строка).
    $d = 'keys/old';
    $dir = opendir($d);
    $count = 0;
    while($file = readdir($dir)){
        if($file == '.' || $file == '..' || is_dir($d . $file)){
            continue;
        }
        $count++;
    }
    $oldDir = 'keys/old';
    $newDir = 'keys';
    $files = array_slice(scandir($oldDir), 2);
    $keys = [];
    foreach ($files as $file) {
        $keys = array_merge($keys, explode("\n",file_get_contents($oldDir.'/'.$file)));
    }
    $keyChunks = array_chunk($keys, $count);
    $fk = fopen("keys/keys.txt", "w+");
    foreach ($keyChunks as $key=>$chunk) {
    	array_push($chunk, "\n");
        fwrite($fk, implode("\n",$chunk));
    }
    Ответ написан
    Комментировать
  • Как сделать проверку правильности ввода на JS?

    @Ablovka Автор вопроса
    Додумал, доделал. спасибо @OVK2015
    До этого форма проверялась на сервере при помощи AJAX. Если да, менялась форма ввода, путем добавления класса.
    JS:
    $(document).ready(function(){
    	$("#p_input").keyup(function(){
    		$.post("func/p_login.php",{ p_input:$(this).val() } ,function(data){
    			if(data=='no'){
    				$("#p_success").fadeTo(200,1,function(){
    					$(this).addClass('glyphicon-remove');
    					$(this).removeClass('glyphicon-ok');
    					$("#p_form").addClass('has-error');
    					$("#button_s").addClass('disabled');
    					$("#p_form").removeClass('has-success');
    					});
    					}else{
    						$("#p_success").fadeTo(200,1,function(){
    							$(this).addClass('glyphicon-ok');
    							$(this).removeClass('glyphicon-remove');
    							$("#button_s").removeClass('disabled');
    							$("#p_form").addClass('has-success');
    							$("#p_form").removeClass('has-error');
    							});
    							}});
    							});
    							});


    PHP:
    <?PHP
    if( substr(($_POST["p_input"]),0,1) != "P" ) {
    echo "no";
    }else{
    	if(!ereg("^[0-9]{7,8}$", substr(($_POST["p_input"]),1))){ 
    	echo "no";
    }else{
    	echo "yes";
    	}
    	}
    ?>


    Теперь то же замое делается не на сервере, а у клиента с помощью JS с JQuery:
    $(document).ready(function(){
    	$("#p_input").keyup(function(){
    		var p_input = $("#p_input").val();
    		if(p_input.match(/^P[0-9]{7,8}$/) != null){
    			$("#p_success").fadeTo(200,1,function(){
    				$(this).addClass('glyphicon-ok');
    				$(this).removeClass('glyphicon-remove');
    				$("#p_form").addClass('has-success');
    				$("#p_form").removeClass('has-error');
    				});
    				}else{
    				$("#p_success").fadeTo(200,1,function(){
    					$(this).addClass('glyphicon-remove');
    					$(this).removeClass('glyphicon-ok');
    					$("#p_form").addClass('has-error');
    					$("#p_form").removeClass('has-success');
    					});
    					}});
    					});
    Ответ написан
    Комментировать
  • Как через cron выбрать из БД несколько строк, отдельно посчитать каждую и обновить каждую отдельно?

    @Ablovka Автор вопроса
    Решил проблему циклом.
    $i = 1;
    do {
    	$db->Query("SELECT * FROM user_points WHERE id = '$i'");
        $pdata = $db->FetchArray();
     *тут обрабатываем, что мне надо и, учитывая id строк, меняем записи*
    	$i++;
    } while ($pdata["id"] > 0);


    Благо во второй таблице, ники пользователей уникальны и не могут повторяться, поэтому, не составило труда поменять данные в 2х, нужных мне, таблицах.
    Ответ написан
    Комментировать
  • Как сделать вывод нескольких переменных из БД, если она больше 1 (одним кодом)?

    @Ablovka Автор вопроса
    Решил вот так, совсем забыл про циклы :)

    $db->Query("SELECT * FROM db_users_art WHERE id = '$usid' LIMIT 1");
    $art = $db->FetchArray();
    
    for ($i = 1; $i <= 3; $i++) {
        if ($art["art_".$i] >= 1) {
    		echo '<img src="/img/art/art_'.$i.'.gif">';
    	}
    }
    Ответ написан
    Комментировать
  • Как назначить URL на миниатюру в WordPress?

    @Ablovka Автор вопроса
    Тут узнал, что за изображение отвечает функция get_the_post_thumbnail(), но где она находится не написано.
    Можно как-то сделать, что бы изображение наследовало ссылку из заголовка? (которое указываешь при добавлении миниатюры)

    UPD: Фууух, было достаточно сложно, но я смог разобраться. У меня тема Gridsby (можете посмотреть). Теперь по этим фотографиям открывается ссылка, которую я захочу.

    В общем, как я это осуществил:
    1. Узнал, что ссылка на пост хранится в функции the_permalink() (как там оказалась ссылка, найдёте сами)
    2. Узнал в каких файлах она вызывается. У меня это:
    - archive-image.php
    - page-full-gallery.php
    - page-gallery.php
    - page-home.php
    3. Отлично, теперь надо заменить её на нашу ссылку.
    3.1 Создаем произвольное поле (вам в этом поможет гугл). Никогда не пользовался, получилось сразу. Название полю дал url_img
    3.2 Вставил в файлы код (благо, гугл помог)
    <?php
      $custom_fields = get_post_custom($post_id);
      $my_custom_field = $custom_fields['url_img']; //'url_img' - название произвольного поля
      foreach ( $my_custom_field as $key => $my_url ); //$my_url - то, что вы ввели в произвольном поле

    3.3 Заменяем the_permalink() на echo $my_url;

    PROFIT

    Так же, где меняли the_permalink() лучше сделать target="_blank", чтобы ссылка открывалась в новом окне. Например, <a href="<?php echo $my_url; ?>" target="_blank">
    Ответ написан
    Комментировать