teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

編集質問

2018/02/19 05:51

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -4,7 +4,7 @@
4
4
  教えてくださませ!!
5
5
 
6
6
 
7
- ログインした後のURLが下記のなっています
7
+ ログインした後のURLが下記のようになっています
8
8
 
9
9
  ```
10
10
  example.com/home/before_login_actions

2

修正

2018/02/19 05:51

投稿

退会済みユーザー
title CHANGED
@@ -1,1 +1,1 @@
1
- Laravel5 いきなりTrying to get property of non-object エラーです
1
+ Laravel5 Trying to get property of non-object エラーです
body CHANGED
@@ -107,6 +107,7 @@
107
107
  ```
108
108
 
109
109
  ビューに表示するためのindexファイル:
110
+ index.Controller.php
110
111
  ```
111
112
 
112
113
  <?php

1

質問修正

2018/02/19 05:32

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -1,7 +1,15 @@
1
- 半年前から問題なかったのですが今日いきなりに下記のエラーができました。
2
- 原因は非オブジェクトのプパティを取得しようとするときにダメでたみたがどうよう解決できすか?
1
+ グインするときに下記のエラーが出て、しかしJOBSテーブルにjob_idデータがあればエラーはなりせん。
3
2
 
3
+ 原因はjob_idのデータがないからですが初期状態はjob_idデータがないのが正しいので、初期状態でもエラーが出ないようにするにはどうすればいいですか?
4
+ 教えてくださませ!!
4
5
 
6
+
7
+ ログインした後のURLが下記のなっています
8
+
9
+ ```
10
+ example.com/home/before_login_actions
11
+ ```
12
+
5
13
  エラーは下記です:
6
14
  ```
7
15
  Trying to get property of non-object
@@ -10,7 +18,7 @@
10
18
  at HandleExceptions->handleError(8, 'Trying to get property of non-object', '/var/www/html/test/app/Http/Controllers/UserBaseController.php', 28, array('request' => object(Request), 'reset_flg' => true, 'status_counts_names' => null, 'job' => null))
11
19
  ```
12
20
 
13
- Controllers/UserBaseController.phpは下記です。
21
+ エラーで表示されているファイルControllers/UserBaseController.phpは下記です。
14
22
 
15
23
  ```
16
24
  <?php
@@ -96,4 +104,119 @@
96
104
  ちなみにline28は下記です:
97
105
  ```
98
106
  $job_ids = explode(',', $job->job_id);
107
+ ```
108
+
109
+ ビューに表示するためのindexファイル:
110
+ ```
111
+
112
+ <?php
113
+
114
+ namespace App\Http\Controllers;
115
+
116
+ use Illuminate\Http\Request;
117
+ use App\User;
118
+ use App\Job;
119
+ use App\Apply_users;
120
+ use App\Location;
121
+ use App\Job_categories;
122
+ use App\Industry;
123
+ use App\Language;
124
+ use App\Language_level;
125
+ use App\Education;
126
+ use App\Http\Controllers\UserBaseController;
127
+ use Illuminate\Support\Facades\Config;
128
+ use Mail;
129
+
130
+ class HomeController extends UserBaseController
131
+ {
132
+ public function index(Request $request)
133
+ {
134
+ $search = $request->all();
135
+ $user_id = $this->user_id;
136
+ $apply_users_and_job_data = Apply_users::get_apply_user_list($search, $user_id);
137
+
138
+ $apply_users = $apply_users_and_job_data['apply_users'];
139
+ $data['job_list'] = $apply_users_and_job_data['job_list'];
140
+ $job_ids = array();
141
+ if (!empty($data['job_list'])) {
142
+ foreach ($data['job_list'] as $job) {
143
+ $job_ids[] = $job->job_id;
144
+ }
145
+ }
146
+ //重複削除
147
+ $job_ids = (!empty($job_ids)) ? array_unique($job_ids) : array();
148
+ $apply_user_emails = array();
149
+ foreach ($apply_users as $key => $apply_user) {
150
+ if (in_array($apply_user->job_id, $job_ids)) {
151
+ $apply_user_emails[] = $apply_user->email;
152
+ $now = intval(date('Ymd'));
153
+ $birth = intval($apply_user->birth_on);
154
+ $apply_users[$key]->age = floor(($now - $birth) / 10000);
155
+ } else {
156
+ unset($apply_users[$key]);
157
+ }
158
+ }
159
+ $duplicated_emails = getDuplicatedArray($apply_user_emails);
160
+ $data['apply_users'] = $apply_users;
161
+ $data['user_status_list'] = config('user_status.user_status');
162
+ $data['duplicated_emails'] = $duplicated_emails;
163
+ $data['search'] = $search;
164
+ $data['locations'] = Location::all();
165
+ $data['industries'] = Industry::all();
166
+ $data['educations'] = Education::all();
167
+ $data['categories'] = Job_categories::all();
168
+ $data['language_levels'] = Language_level::all();
169
+ $data['languages'] = Language::all();
170
+ $data['current_user'] = User::find($this->user_id);
171
+ $data['apply_user_count'] = Apply_users::get_apply_user_count($this->user_id);
172
+
173
+ return view('home', $data);
174
+ }
175
+
176
+ public function show($id, Request $request)
177
+ {
178
+ $eager_list = [
179
+ 'Job',
180
+ 'Apply_job_offers',
181
+ 省略..
182
+ ];
183
+
184
+ $apply_users = Apply_users::with($eager_list)->findOrfail($id);
185
+
186
+ // status名取得
187
+ $user_status = config('user_status.user_status');
188
+
189
+ $apply_users->status_name = $user_status[$apply_users->status];
190
+ // 重複チェック
191
+ $same_apply_users = Apply_users::where(['email' => $apply_users->email, 'user_id' => $this->user_id])->get();
192
+ $data['duplicated_flg'] = (count($same_apply_users) > 1) ? TRUE : FALSE;
193
+ // update reading-flg
194
+ $data['current_user'] = User::find($this->user_id);
195
+ if ($apply_users->reading_flg == 0) {
196
+ Apply_users::where(['id' => $apply_users->id])->update(['reading_flg' => 1]);
197
+ // update not read count
198
+ $update_user_param['not_read_count'] = $data['current_user']->not_read_count - 1;
199
+ User::where(['id' => $this->user_id])->update($update_user_param);
200
+ $data['current_user'] = User::find($this->user_id);
201
+ }
202
+
203
+ $data['apply_users'] = $apply_users;
204
+ $data['apply_users']['phone_format'] = phone_format($apply_users->phone);
205
+ $data['apply_users']['age_calculation'] = age_calculation($apply_users->birth_on);
206
+ $data['user_status'] = $user_status;
207
+ $data['apply_user_count'] = Apply_users::get_apply_user_count($this->user_id);
208
+
209
+ return view('apply_users.details', $data);
210
+ }
211
+
212
+ public function before_login_actions(Request $request)
213
+ {
214
+ $this->update_all_counts($request);
215
+ return redirect('/home');
216
+ }
217
+ 省略...
218
+
219
+ }
220
+
221
+
99
222
  ```