August 10, 2021 in Laravel, Technology, Tips and Tricks
session set and get in laravel
Store a piece of data in the session…
session(['key' => 'value']);
Retrieving Data
$value = $request->session()->get('key');
August 10, 2021 in Laravel, Technology, Tips and Tricks
session(['key' => 'value']);
$value = $request->session()->get('key');
August 9, 2021 in Tips and Tricks
Please describe
$table->bigInteger()
$table->mediumInteger()
$table->integer()
$table->smallInteger()
$table->tinyInteger()
August 9, 2021 in Laravel, Technology, Tips and Tricks
| Command | Description |
|---|---|
$table->id(); | Alias of $table->bigIncrements('id'). |
$table->foreignId('user_id'); | Alias of $table->unsignedBigInteger('user_id'). |
$table->bigIncrements('id'); | Auto-incrementing UNSIGNED BIGINT (primary key) equivalent column. |
$table->bigInteger('votes'); | BIGINT equivalent column. |
$table->binary('data'); | BLOB equivalent column. |
$table->boolean('confirmed'); | BOOLEAN equivalent column. |
$table->char('name', 100); | CHAR equivalent column with a length. |
$table->date('created_at'); | DATE equivalent column. |
$table->dateTime('created_at', 0); | DATETIME equivalent column with precision (total digits). |
$table->dateTimeTz('created_at', 0); | DATETIME (with timezone) equivalent column with precision (total digits). |
$table->decimal('amount', 8, 2); | DECIMAL equivalent column with precision (total digits) and scale (decimal digits). |
$table->double('amount', 8, 2); | DOUBLE equivalent column with precision (total digits) and scale (decimal digits). |
$table->enum('level', ['easy', 'hard']); | ENUM equivalent column. |
$table->float('amount', 8, 2); | FLOAT equivalent column with a precision (total digits) and scale (decimal digits). |
$table->geometry('positions'); | GEOMETRY equivalent column. |
$table->geometryCollection('positions'); | GEOMETRYCOLLECTION equivalent column. |
$table->increments('id'); | Auto-incrementing UNSIGNED INTEGER (primary key) equivalent column. |
$table->integer('votes'); | INTEGER equivalent column. |
$table->ipAddress('visitor'); | IP address equivalent column. |
$table->json('options'); | JSON equivalent column. |
$table->jsonb('options'); | JSONB equivalent column. |
$table->lineString('positions'); | LINESTRING equivalent column. |
$table->longText('description'); | LONGTEXT equivalent column. |
$table->macAddress('device'); | MAC address equivalent column. |
$table->mediumIncrements('id'); | Auto-incrementing UNSIGNED MEDIUMINT (primary key) equivalent column. |
$table->mediumInteger('votes'); | MEDIUMINT equivalent column. |
$table->mediumText('description'); | MEDIUMTEXT equivalent column. |
$table->morphs('taggable'); | Adds taggable_id UNSIGNED BIGINT and taggable_type VARCHAR equivalent columns. |
$table->uuidMorphs('taggable'); | Adds taggable_id CHAR(36) and taggable_type VARCHAR(255) UUID equivalent columns. |
$table->multiLineString('positions'); | MULTILINESTRING equivalent column. |
$table->multiPoint('positions'); | MULTIPOINT equivalent column. |
$table->multiPolygon('positions'); | MULTIPOLYGON equivalent column. |
$table->nullableMorphs('taggable'); | Adds nullable versions of morphs() columns. |
$table->nullableUuidMorphs('taggable'); | Adds nullable versions of uuidMorphs() columns. |
$table->nullableTimestamps(0); | Alias of timestamps() method. |
$table->point('position'); | POINT equivalent column. |
$table->polygon('positions'); | POLYGON equivalent column. |
$table->rememberToken(); | Adds a nullable remember_token VARCHAR(100) equivalent column. |
$table->set('flavors', ['strawberry', 'vanilla']); | SET equivalent column. |
$table->smallIncrements('id'); | Auto-incrementing UNSIGNED SMALLINT (primary key) equivalent column. |
$table->smallInteger('votes'); | SMALLINT equivalent column. |
$table->softDeletes('deleted_at', 0); | Adds a nullable deleted_at TIMESTAMP equivalent column for soft deletes with precision (total digits). |
$table->softDeletesTz('deleted_at', 0); | Adds a nullable deleted_at TIMESTAMP (with timezone) equivalent column for soft deletes with precision (total digits). |
$table->string('name', 100); | VARCHAR equivalent column with a length. |
$table->text('description'); | TEXT equivalent column. |
$table->time('sunrise', 0); | TIME equivalent column with precision (total digits). |
$table->timeTz('sunrise', 0); | TIME (with timezone) equivalent column with precision (total digits). |
$table->timestamp('added_on', 0); | TIMESTAMP equivalent column with precision (total digits). |
$table->timestampTz('added_on', 0); | TIMESTAMP (with timezone) equivalent column with precision (total digits). |
$table->timestamps(0); | Adds nullable created_at and updated_at TIMESTAMP equivalent columns with precision (total digits). |
$table->timestampsTz(0); | Adds nullable created_at and updated_at TIMESTAMP (with timezone) equivalent columns with precision (total digits). |
$table->tinyIncrements('id'); | Auto-incrementing UNSIGNED TINYINT (primary key) equivalent column. |
$table->tinyInteger('votes'); | TINYINT equivalent column. |
$table->unsignedBigInteger('votes'); | UNSIGNED BIGINT equivalent column. |
$table->unsignedDecimal('amount', 8, 2); | UNSIGNED DECIMAL equivalent column with a precision (total digits) and scale (decimal digits). |
$table->unsignedInteger('votes'); | UNSIGNED INTEGER equivalent column. |
$table->unsignedMediumInteger('votes'); | UNSIGNED MEDIUMINT equivalent column. |
$table->unsignedSmallInteger('votes'); | UNSIGNED SMALLINT equivalent column. |
$table->unsignedTinyInteger('votes'); | UNSIGNED TINYINT equivalent column. |
$table->uuid('id'); | UUID equivalent column. |
$table->year('birth_year'); | YEAR equivalent column. |
August 8, 2021 in Laravel, Php, Technology, Tips and Tricks
composer create-project laravel/laravel example-app
cd example-app
php artisan serve
<!-- View stored in resources/views/home.blade.php -->
<html>
<body>
<h1>My Home Page {{ $name }}</h1>
</body>
</html>
<!-- Route stored in routes/web.php -->
Route::get('/', function () {
return view('greeting', ['name' => 'James']);
});
Step 1: Create model and controller
php artisan make:controller HomeController --resource --model=Home
Step 2: Create View in Laravel
<!-- View stored in resources/views/home.blade.php -->
<html>
<body>
<h1>My Home Page {{ $name }}</h1>
</body>
</html>
Step 3: call controller using route and display view
<!-- Route stored in routes/web.php -->
Route::get('/home', 'App\Http\Controllers\HomeController@index');
or
Route::get('/home', 'HomeController@index');
Note: changing the RouteServiceProvider.php file in App/Providers/ path by uncommenting the code.
protected $namespace = ‘App\Http\Controllers’;
php artisan make:controller ApiController
You will find a new file named ApiController.php in the app\http\controllers directory. Next, we can add the following methods:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class ApiController extends Controller
{
public function sendResponse($result, $message)
{
$response = [
'success' => true,
'data' => $result,
'message' => $message,
];
return response()->json($response, 200);
}
/**
* return error response.
*
* @return \Illuminate\Http\Response
*/
public function sendError($error, $errorMessages = [], $code = 404)
{
$response = [
'success' => false,
'message' => $error,
];
if(!empty($errorMessages)){
$response['data'] = $errorMessages;
}
return response()->json($response, $code);
}
//
public function getList() {
/* $test = Test::get()->toJson(JSON_PRETTY_PRINT);
return response($tests, 200);*/
/* return response()->json([
"message" => "student record created"
], 201);*/
$data= array();
$data = DB::connection('default')->table('users')->where('id',$id)->get();
return $this->sendResponse($data, 'Successfully');
}
}
Proceed to the routes directory and open the api.php file and create the endpoints that will reference the methods created earlier in the ApiController
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
<!-- Route stored in routes/api.php -->
Route::get('getList', 'App\Http\Controllers\ApiController@getList');
or
Route::get('getList', 'ApiController@getList');
Test Api using Postman

composer dumpautoload
php artisan cache:clear
php artisan config:clear
php artisan view:clear
make:channel Create a new channel class
make:command Create a new Artisan command
make:controller Create a new controller class
make:event Create a new event class
make:exception Create a new custom exception class
make:factory Create a new model factory
make:job Create a new job class
make:listener Create a new event listener class
make:mail Create a new email class
make:middleware Create a new middleware class
make:migration Create a new migration file
make:model Create a new Eloquent model class
make:notification Create a new notification class
make:observer Create a new observer class
make:policy Create a new policy class
make:provider Create a new service provider class
make:request Create a new form request class
make:resource Create a new resource
make:rule Create a new validation rule
make:seeder Create a new seeder class
make:test Create a new test class
July 29, 2021 in Only Happened In India, Php, Tips and Tricks
1, Node.js from here: https://nodejs.org/en/download/
2, Install git from here: https://git-scm.com/downloads
Clone this sample project:
git clone https://github.com/electron/electron-quick-start
cd electron-quick-start
npm install
npm start
It will download a sample project in your computer and “npm install” to install the required node modules in the project.
main.js
// Modules to control application life and create native browser window
const {app, BrowserWindow} = require('electron')
const path = require('path')
function createWindow () {
// Create the browser window.
const mainWindow = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
preload: path.join(__dirname, 'preload.js')
}
})
// and load the index.html of the app.
mainWindow.loadURL('index.html')
// Open the DevTools.
// mainWindow.webContents.openDevTools()
}
// This method will be called when Electron has finished
// initialization and is ready to create browser windows.
// Some APIs can only be used after this event occurs.
app.whenReady().then(() => {
createWindow()
app.on('activate', function () {
// On macOS it's common to re-create a window in the app when the
// dock icon is clicked and there are no other windows open.
if (BrowserWindow.getAllWindows().length === 0) createWindow()
})
})
// Quit when all windows are closed, except on macOS. There, it's common
// for applications and their menu bar to stay active until the user quits
// explicitly with Cmd + Q.
app.on('window-all-closed', function () {
if (process.platform !== 'darwin') app.quit()
})
// In this file you can include the rest of your app's specific main process
// code. You can also put them in separate files and require them here.
index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<!-- https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP -->
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'">
<meta http-equiv="X-Content-Security-Policy" content="default-src 'self'; script-src 'self'">
<title>Hello World!</title>
</head>
<body>
<h1>Hello World!</h1>
We are using Node.js <span id="node-version"></span>,
Chromium <span id="chrome-version"></span>,
and Electron <span id="electron-version"></span>.
</body>
</html>
Whatever you do in this HTML file it will be included in your application.
Now how to convert a website into an app:
mainWindow.loadURL('https://phplift.net/')
This will open your website in the application you can give it to your users to install in computers.
Commands to generate software build
Mac: electron-packager . --overwrite --platform=darwin --arch=x64 --icon=assets/icons/mac/icon.icns --prune=true --out=release-builds,
Windows: electron-packager . --overwrite --asar=true --platform=win32 --arch=ia32 --icon=assets/icons/win/icon.ico --prune=true --out=release-builds --version-string.CompanyName=CE --version-string.FileDescription=CE --version-string.ProductName="Electron Webview",
Linux: electron-packager . --overwrite --platform=linux --arch=x64 --icon=assets/icons/png/1024x1024.png --prune=true --out=release-builds,
Edit options as per your requirements.
This is just a simple application demo you can do a lot of things with this framework some amazing demos are available here: https://github.com/hokein/electron-sample-apps
Some desktop apps created on electron framework almost all developers use them is:
1. VS Code
2. Whatsapp Desktop app
3. Slack Desktop app
July 24, 2021 in Tips and Tricks
<div class="card">
<div class="card-header" id="headingTwo">
<h2 class="mb-0">
<button class="btn btn-primary collapsed" type="button" data-toggle="collapse" data-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
Experience Detail
</button>
</h2>
</div>
<div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionExample">
<div class="card-body" id="experience">
<span class="fa fa-plus-circle fa-2x" id="addBtn"></span>
<div class="form-row experience" id="experience-1">
<div class="form-group col-md-3">
<label for="companyName">Company Name</label>
<input type="text" class="form-control" id="companyName" placeholder="SOA Technology">
</div>
<div class="form-group col-md-3">
<label for="yourPosition">Your Position</label>
<input type="text" class="form-control" id="yourPosition" placeholder="CEO">
</div>
<div class="form-group col-md-2">
<label for="startEnd">Start & End</label>
<input type="text" class="form-control" id="startEnd" placeholder="Jun 2018-Jun 2020">
</div>
<div class="form-group col-md-3">
<label for="rolesResponsibility">Roles & Responsibility</label>
<textarea id="rolesResponsibility" class="form-control"></textarea>
</div>
<div class="form-group col-md-1">
<span class="fa fa-minus-circle fa-2x removeBtn "></span>
</div>
</div>
</div>
</div>
</div>
<script>
var experience=2;
$( "#addBtn" ).click(function() {
$('#experience-1')
.clone()
.attr('id', 'experience-'+ experience)
.insertAfter($('[id^=experience]:last'));
$("#experience-"+experience).find('span').attr('onclick', 'myfun("experience-'+experience+'")');
experience++;
});
function myfun(sid)
{
$('#'+sid).remove();
}
</script>

July 24, 2021 in Tips and Tricks
<div class="container">
<div class="goodbye">
Goodbye
<div class="hello">Hello</div>
</div>
</div>
$( ".hello" ).clone().appendTo( ".goodbye" );
<div class="container">
<div class="hello">Hello</div>
<div class="goodbye">
Goodbye
<div class="hello">Hello</div>
</div>
</div>
July 24, 2021 in Tips and Tricks
/*****Function to optimize website*****/
function remove_cssjs_ver( $src ) {
if( strpos( $src, '?ver=' ) )
$src = remove_query_arg( 'ver', $src );
return $src;
}
add_filter( 'style_loader_src', 'remove_cssjs_ver', 10, 2 );
add_filter( 'script_loader_src', 'remove_cssjs_ver', 10, 2 );
remove_action( 'wp_head', 'rsd_link' ) ;
remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('wp_print_styles', 'print_emoji_styles');
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'admin_print_styles', 'print_emoji_styles' );
remove_action('wp_head', 'wp_shortlink_wp_head', 10, 0);
function disable_embed(){
wp_dequeue_script( 'wp-embed' );
}
add_action( 'wp_footer', 'disable_embed' );
add_filter('xmlrpc_enabled', '__return_false');
remove_action( 'wp_head', 'wp_generator' ) ;
remove_action( 'wp_head', 'wlwmanifest_link' ) ;
function disable_pingback( &$links ) {
foreach ( $links as $l => $link )
if ( 0 === strpos( $link, get_option( 'home' ) ) )
unset($links[$l]);
}
add_action( 'pre_ping', 'disable_pingback' );
add_action( 'init', 'stop_heartbeat', 1 );
function stop_heartbeat() {
wp_deregister_script('heartbeat');
}
July 24, 2021 in Tips and Tricks, Ubuntu
Find the zombie
$ ps aux | grep 'Z'
What you get is Zombies and anything else with a Z in it, so you will also get the grep:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
usera 13572 0.0 0.0 7628 992 pts/2 S+ 19:40 0:00 grep --color=auto Z
usera 93572 0.0 0.0 0 0 ?? Z 19:40 0:00 something
Find the zombie’s parent:
$ pstree -p -s 93572
Will give you:
init(1)---cnid_metad(1311)---cnid_dbd(5145)
sudo kill -9 process_id
$ sudo kill -1 7667
$ sudo kill -9 1317
$ sudo kill -9 -1
working your way up to -9
July 24, 2021 in Tips and Tricks
Connection tracking (“conntrack”) is a core feature of the Linux kernel’s networking stack. It allows the kernel to keep track of all logical network connections or flows, and thereby identify all of the packets which make up each flow so they can be handled consistently together.