#php #google-sheets-api
Вопрос:
Я пишу код для извлечения данных из моих Google листов с помощью API Google листов и PHP, но мои данные не отображаются, и я получаю ошибку:
Неперехваченная синтаксическая ошибка: Неожиданный токен ‘>’
Вот мой код:
<script>
function makeApiCall() {
// The ID of the spreadsheet to retrieve data from.
$spreadsheetId: '1wcNmi2hgz30gx1zjrKDgMNrxf1mPPFXbp7g_WRpK9Hw'; // TODO: Update placeholder value.
// The A1 notation of the values to retrieve.
$range: 'Data1!A2:H'; // TODO: Update placeholder value.
// How values should be represented in the output.
// The default render option is ValueRenderOption.FORMATTED_VALUE.
// $valueRenderOption: ''; // TODO: Update placeholder value.
// How dates, times, and durations should be represented in the output.
// This is ignored if value_render_option is
// FORMATTED_VALUE.
// The default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].
// $dateTimeRenderOption: ''; // TODO: Update placeholder value.
$response = $service->spreadsheets_values->get($spreadsheetId, $range);
$values = $response->getValues();
if (empty($values)) {
print "No data found.n";
} else {
foreach ($values as $row) {
// Print columns A and E, which correspond to indices 0 and 4.
printf("%s %s %s %s %s %s %sn", $row[0], $row[1],$row[2],$row[3],$row[4],$row[5],$row[6],$row[7]);
}
}
}
function initClient() {
var API_KEY = 'AIzaSyAOFUNhuXlOxPBTmkqUEyxnEkG8mnR9N7k'; // TODO: Update placeholder with desired API key.
var CLIENT_ID = '289763823878-c2pfkf7g9plaup99v4p42fncnm3on188.apps.googleusercontent.com'; // TODO: Update placeholder with desired client ID.
// TODO: Authorize using one of the following scopes:
// 'https://www.googleapis.com/auth/drive'
// 'https://www.googleapis.com/auth/drive.file'
// 'https://www.googleapis.com/auth/drive.readonly'
// 'https://www.googleapis.com/auth/spreadsheets'
// 'https://www.googleapis.com/auth/spreadsheets.readonly'
var SCOPE = 'https://www.googleapis.com/auth/spreadsheets.readonly';
gapi.client.init({
'apiKey': API_KEY,
'clientId': CLIENT_ID,
'scope': SCOPE,
'discoveryDocs': ['https://sheets.googleapis.com/$discovery/rest?version=v4'],
}).then(function() {
makeApiCall();
});
}
</script>
Я все еще новичок, и прошла неделя с тех пор, как у меня возникла эта проблема, может ли кто-нибудь мне помочь?
Комментарии:
1.Хороший отступ в коде поможет нам прочитать код, и, что более важно, он поможет вам отладить ваш код , быстро взгляните на стандарт кодирования для вашей собственной выгоды. Вас могут попросить внести изменения в этот кодекс через несколько недель/месяцев, и в конце концов вы меня поблагодарите.
2. Сообщения об ошибках обычно содержат подсказку о том, где находится ошибка, есть ли в этой ошибке ЧТО-то БОЛЬШЕЕ, чем вы нам показали
Uncaught SyntaxError: Unexpected token '>'
3. Почему вы используете php — код внутри кода javascript ?
4. У вас
printf()
больше ценностей, чем у владельцев мест 🙂5. Спасибо тебе за это, я об этом не догадывался..
Ответ №1:
<script></script>
может использоваться только для включения кода javascript в html-файл
- Таким образом, любой код, вставленный в эти теги, будет считываться как javascript.
->
не является допустимым оператором javascript, и именно поэтому код выдает вам здесь (первую) ошибку
Если то, чего вы пытаетесь достичь, — это встраивать php-код в свой html-процесс отличается:
- Сохраните свой php-код в отдельном файле, расположенном на сервере
- Используйте
<?php include 'footer.php';?>
теги, чтобы включить этот файл в свой HTML-код